Break a wide-character string into tokens
#include <wchar.h> wchar_t * wcstok( wchar_t * ws1, const wchar_t * ws2, wchar_t ** ptr );
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The function wcstok() breaks the wide-character string pointed to by ws1 into a sequence of tokens, each of which is delimited by a wide character from the string pointed to by ws2.
In the first call to wcstok(), ws1 must point to a null-terminated string, ws2 must point to a null-terminated string of separator wide characters, and ptr is ignored. The wcstok() function returns a pointer to the first wide character of the first token, writes a NUL wide character into ws1 immediately following the returned token, and updates ptr.
In subsequent calls, ws1 must be NULL, and ptr must be unchanged from the previous call so that subsequent calls will move through the string ws1, returning successive tokens until no tokens remain. The separator string ws2 may differ from call to call. When no tokens remain in ws1, a NULL pointer is returned.
A pointer to the token found, or NULL if no token was found.
Safety: | |
---|---|
Cancellation point | No |
Interrupt handler | No |
Signal handler | Yes |
Thread | Yes |
memchr(), strchr(), strcspn(), strpbrk(), strrchr(), strset(), strspn(), strstr(), strtok(), strtok_r(), wcschr(), wcscspn(), wcspbrk(), wcsrchr(), wcsspn(), wcsstr()