#include <wchar.h> wchar_t *wcstok(wchar_t *wcs, const wchar_t *delim, wchar_t **ptr);
Поиск начинается с wcs, если wcs не равно NULL; или с *ptr, если wcs равно NULL. Сначала пропускаются все разграничительные широкие символы, т.е. указатель "перепрыгивает" через все широкие символы, которые встречаются в delim. Достигнув конца строки, wcstok возвращает ноль, тем самым сообщая, что не было найдено ни одного элемента, и сохраняет соответствующее значение в *ptr. Таким образом, последующие обращения к wcstok будут возвращать NULL. В противном случае функция wcstok распознает начало элемента и возвращает указатель на него, но перед тем, как это сделать, она завершает нулем элемент путем перемещения следующего широкого символа (который встретился в delim вместе с L'\0' символом) и обновляет *ptr, так что последующие вызовы будут продолжать поиск после найденного элемента.
wchar_t *wcs = ...; wchar_t *token; wchar_t *state; for (token = wcstok(wcs, " \t\n", &state); token != NULL; token = wcstok(NULL, " \t\n", &state)) { ... }
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |