String t: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Created page with ''''<code>string_t</code>''' is a Valve-specific replacement for the W:C String. It doesn't do anything special; it's just an indirection to "allow more flexibility in future…')
 
Line 22: Line 22:
== See also ==
== See also ==


* <code>[[string]]</code>
* [[String]]
* <code>[[char]]</code>
* <code>[[char]]</code>


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

Revision as of 14:30, 10 April 2011

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