wchar_t* wcstok( wchar_t* str, const wchar_t* delim, wchar_t ** ptr);
Finds the next token in a null-terminated wide string pointed to by str. The separator characters are identified by null-terminated wide string pointed to by delim.
This function is designed to be called multiples times to obtain successive tokens from the same string.
std::wcstok
for this particular wide string. The function searches for the first wide character which is not contained in delim.std::wcstok
will return a null pointer.std::wcstok
: the function continues from where it left in previous invocation with the same *ptr. The behavior is the same as if the pointer to the wide character that follows the last detected token is passed as str.Pointer to the beginning of the next token or null pointer if there are no more tokens.
[edit] NoteThis function is destructive: it writes the L'\0' characters in the elements of the string str. In particular, a wide string literal cannot be used as the first argument of std::wcstok
.
Unlike std::strtok, this function does not update static storage: it stores the parser state in the user-provided location.
Unlike most other tokenizers, the delimiters in std::wcstok
can be different for each subsequent token, and can even depend on the contents of the previous tokens.
#include <cwchar> #include <iostream> int main() { wchar_t input[100] = L"A bird came down the walk"; wchar_t* buffer; wchar_t* token = std::wcstok(input, L" ", &buffer); while (token) { std::wcout << token << '\n'; token = std::wcstok(nullptr, L" ", &buffer); } }
Output:
A bird came down the walk[edit] See also
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4