|
MeatAxe 2.4
|
These functions are used to work with dynamically allocated strings.
A dynamic string contains a normal «char*» pointing to a NUL terminated text. Note however, that dynamic strings use their own memory management which cannot be mixed with the standard C library memory functions. Unused strings must be freed with StrFree(), and you must never use free() or realloc() on a dynamic string.
Data Structures | |
| struct | String |
| A dynamic string. More... | |
Functions | |
| String | StrAlloc (size_t initial_capacity) |
| Create a string. | |
| void | StrFree (String *s) |
| Free a string. | |
| void | StrAppend (String *s, const char *text) |
| Appends text to the end of a string. | |
| void | StrAppendF (String *s, const char *fmt,...) |
| snprintf() replacement. | |
| void | StrPrintF (String *s, const char *fmt,...) |
| snprintf() replacement. | |
| void | StrVAppendF (String *s, const char *fmt, va_list args) |
| vsnprintf() replacement. | |
| void | StrVPrintF (String *s, const char *fmt, va_list args) |
| vsnprintf() replacement. | |
| String StrAlloc | ( | size_t | initial_capacity | ) |
Create a string.
This function creates an empty string.
| initial_capacity | Number of bytes to reserve on allocation. |
| void StrAppend | ( | String * | s, |
| const char * | text | ||
| ) |
Appends text to the end of a string.
| s | The string to be modified. |
| text | Text to append. |
| void StrAppendF | ( | String * | s, |
| const char * | fmt, | ||
| ... | |||
| ) |
snprintf() replacement.
Works like StrVAppendF() but expects a variable argument list.
| void StrFree | ( | String * | s | ) |
| void StrPrintF | ( | String * | s, |
| const char * | fmt, | ||
| ... | |||
| ) |
snprintf() replacement.
Works like StrVPrintF() but expects a variable argument list.
| void StrVAppendF | ( | String * | s, |
| const char * | fmt, | ||
| va_list | args | ||
| ) |
vsnprintf() replacement.
Formats a string with vsnprintf() and appends the resulting text to «s».
| s | The string to be modified. |
| fmt | Format |
| args | Arguments for the % placeholders in fmt. |
| void StrVPrintF | ( | String * | s, |
| const char * | fmt, | ||
| va_list | args | ||
| ) |
vsnprintf() replacement.
Works like StrVAppendF() but overwrites the string with the formatted text.
| s | The string to be modified. |
| fmt | Format |
| args | Arguments for the % placeholders in fmt. |