A null-terminated, C-style String for use when working with OS APIs.
A CString is a low-level C-style string for use with Declares and MemoryBlocks. CStrings created from Text or Xojo.Core.MemoryBlock and CStrings stored in Autos are reference-counted and safe to keep around. Otherwise, if the string/object that the CString originates from is tied to the lifetime of that string/object.
You can assign a String variable to a CString and it will be terminated with a null automatically. This only converts the String up to the first Null (0) byte value. CString implicitly converts to String when assigned to String variables.
To convert a Text value to a CString, call Text.ToCString. This will only convert the Text up to the first Null (0) byte value. To convert a CString to a Text value, call Text.FromCString.
Declare a CString variable:
Var s As String = "Hello!" Var cs As CString = s
All project types on all supported operating systems.
String data type