The GString struct contains the public fields of a GString. The str field points to the character data. It may move as text is added. The len field contains the length of the string, not including the terminating nul byte. The str field is nul-terminated and so can be used as an ordinary C string. But it may be moved when text is appended or inserted into the string.