Node:Strings, Next:, Previous:Characters, Up:Simple Data Types



21.4 Strings

Strings are fixed-length sequences of characters. They can be created by calling constructor procedures, but they can also literally get entered at the REPL or in Scheme source files.

Guile provides a rich set of string processing procedures, because text handling is very important when Guile is used as a scripting language.

Strings always carry the information about how many characters they are composed of with them, so there is no special end-of-string character, like in C. That means that Scheme strings can contain any character, even the NUL character '\0'. But note: Since most operating system calls dealing with strings (such as for file operations) expect strings to be zero-terminated, they might do unexpected things when called with string containing unusual characters.