wcstok()

Разбить строку широких символов на элементы (токены)

Прототип:

#include <wchar.h>
wchar_t * wcstok( wchar_t *ws1,
const wchar_t *ws2,
wchar_t **ptr );

Аргументы:

ws1
NULL или строка из широких символов, которую необходимо разбить на токены.
ws2
Набор широких символов, которые разделяют токены.
ptr
Указатель на объект 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 системной библиотеки