Разбить строку широких символов на элементы (токены)
#include <wchar.h>wchar_t * wcstok( wchar_t *ws1,const wchar_t *ws2,wchar_t **ptr );
NULL
или строка из широких символов, которую необходимо разбить на токены.wchar_t
, который функция использует для хранения необходимой информации для продолжения сканирования той же строки.libc
Функция wcstok() разбивает строку, состоящую из широких символов, указанную в ws1 в последовательность токенов, каждый из которых разделяет широкий символ из строки, переданной в аргументе ws2.
При первом вызове wcstok(), ws1 должен указывать на строку с символом завершающего нуля, ws2 должен указывать на строку "разделителей" с символом завершающего нуля, а ptr проигнорирован. Функция wcstok() возвращает указатель на первый широкий символ первого токена, записывает широкий символ NUL
в ws1 сразу же после найденного токена, и обновляет ptr.
В последующих вызовах ws1 должнен быть равен NULL
, а ptr должен оставаться неизмененным после предыдущего вызова, таким образом последующие вызовы будут продолжать сканирование в строке ws1, возвращая далее идущие токены до последнего. Строка ws2 с разделителем может отличаться от вызова к вызову. Когда новых токенов не остается, функция возвращает NULL
.
Указатель на найденный токен, или NULL
, если токен не был обнаружен.
ANSI, POSIX 1003.1
memchr(), strchr(), strcspn(), strpbrk(), strrchr(), strset(), strspn(), strstr(), strtok(), strtok_r(), wcschr(), wcscspn(), wcspbrk(), wcsrchr(), wcsspn(), wcsstr()
Предыдущий раздел: Описание API системной библиотеки