String Conversion Opcodes
Prev | Part II. Csound5 Opcodes | Next

## String Conversion Opcodes

String variables are variables with a name starting with S or gS (for a local or global string variable, respectively), and can store any string with a maximum length defined by the -+max_str_len command line flag (255 characters by default). These variables can be used as input argument to any opcode that exepcts a quoted string constant, and can be manipulated at initialization or performance time with the opcodes listed below.

| Note
String variables and related opcodes are not available in Csound versions older than 5.00.

Csound 5 also has improvements in parsing string constants. It is possible to specify a multi-line string by enclosing it within {{ and }} instead of the usual double quote characters (note that the length of string constants is not limited, and is not affected by the -+max_str_len option), and the following escape sequences are automatically converted:

- \a alert bell

- \b backspace

- \n new line

- \r carriage return

- \t tab

- \\ a single '\' character

- \nnn the character of which the ASCII code (in octal) is nnn

These opcodes perform operations on string variables:

- strcpy - Assigns to a string variable.
- strcat - Concatenates strings, and stores the result in a variable.
- strcmp - Compares strings.
- strget - Assigns to a string variable, from strset table at the specified index, or string score p-field.
- sprintf - printf-style formatted output conversion, storing the result in a string variable.
- puts - Prints a string constant or variable.
- strtod - Converts string value to a floating point value at i-rate.
- strtodk - Converts string value to a floating point value at k-rate.
- strtol - Converts string value to signed integer at i-rate.
- strtolk - Converts string value to signed integer at k-rate.

Prev | Up | Next
Mixer Opcodes | Home | Part III. Overview