Count the number of codepoints in a UTF-8 string.
Defined in <SDL3/SDL_stdinc.h>
size_t SDL_utf8strlen(const char *str);
const char * | str | The null-terminated UTF-8 string to read. Must not be NULL. |
(size_t) Returns The length (in codepoints, excluding the null terminator) of src
.
Counts the codepoints, not bytes, in str
, excluding the null terminator.
If you need to count the bytes in a string instead, consider using SDL_strlen().
Since this handles Unicode, it expects the strings to be well-formed UTF-8 and not a null-terminated string of arbitrary bytes. Bytes that are not valid UTF-8 are treated as Unicode character U+FFFD (REPLACEMENT CHARACTER), so a malformed or incomplete UTF-8 sequence might increase the count by several replacement characters.
It is safe to call this function from any thread.
This function is available since SDL 3.1.3.