String t: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (linked the german translation)
mNo edit summary
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{otherlang2
{{lang|String t|$title=string_t}}
|de=String_t:de
}}
'''<code>string_t</code>''' is a Valve-specific replacement for the [[W:C String|C String]]. It doesn't do anything special; it's just an indirection to "allow more flexibility in future ports or optimization".
'''<code>string_t</code>''' is a Valve-specific replacement for the [[W:C String|C String]]. It doesn't do anything special; it's just an indirection to "allow more flexibility in future ports or optimization".


Line 28: Line 26:
* <code>[[char]]</code>
* <code>[[char]]</code>


{{DISPLAYTITLE:string_t}}
[[Category:Variables]]
[[Category:Variables]]

Latest revision as of 00:42, 18 November 2022

English (en)Translate (Translate)

string_t is a Valve-specific replacement for the C String. It doesn't do anything special; it's just an indirection to "allow more flexibility in future ports or optimization".

Bizarrely, string_t can be one of three things depending on preprocessor set-up:

Usage

Whichever of the above is in effect, there are four macros to use:

NULL_STRING
A constant empty string.
STRING(string_t)
Get a C string. Don't use ToCStr() directly!
MAKE_STRING(const char *)
Make a string_t.
IDENT_STRINGS( s1, s2 )
Are these strings (of either type) pointing to the same memory?

See also