Count the bytes in a UTF-8 character
int utf8len( const char *s,
size_t n );
- A pointer to a UTF-8 character.
- The maximum number of bytes to count.
The utf8str() function counts the number of bytes in the UTF-8
character pointed to by s, to a maximum of n bytes, if
n is nonzero.
This function is similar to
- utf8str() isn't affected by the current locale.
- The s argument isn't allowed to be NULL.
- You can pass 0 for n if you know that s points to
a null-terminated string (i.e. 0 is equivalent to, but more efficient than,
- utf8str() returns -1 if s points to an invalid byte
If n is nonzero and the n bytes pointed to by
s look like an incomplete but potentially valid character, the
function returns the negative total length of that (complete)
character (this is in the range from -2 to -UTF8_LEN_MAX).
- s points to the null character.
- > 0
- The number of bytes that comprise the multibyte character (if
the next n or fewer bytes form a valid multibyte character).
- The n-byte sequence that s points to isn't a valid
(beginning of a) UTF-8-encoded character.
- Other negative value
- The n bytes pointed to by s could be the initial
bytes of a valid UTF-8 sequence.
Unicode Multilingual Support
in the Photon Programmer's Guide
in the QNX Neutrino Library Reference