GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
std::wcstok(3) C++ Standard Libary std::wcstok(3)

std::wcstok - std::wcstok


Defined in header <cwchar>
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.


* If str != nullptr, the call is treated as the first call to std::wcstok
for this particular wide string. The function searches for the first
wide character which is not contained in delim.


* If no such wide character was found, there are no tokens
in str at all, and the function returns a null pointer.
* If such wide character was found, it is the beginning of
the token. The function then searches from that point on
for the first wide character that is contained in delim.


* If no such wide character was found, str has
only one token, and future calls to
std::wcstok will return a null pointer
* If such wide character was found, it is
replaced by the null wide character L'\0' and
the parser state (typically a pointer to the
following wide character) is stored in the
user-provided location *ptr.


* The function then returns the pointer to the beginning of
the token


* If str == nullptr, the call is treated as a subsequent calls to
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.


str - pointer to the null-terminated wide string to tokenize
delim - pointer to the null-terminated wide string identifying delimiters
ptr - pointer to an object of type wchar_t*, which is used by wcstok to store its
internal state


Pointer to the beginning of the next token or null pointer if there are no more
tokens.


This 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.

// Run this code


#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);
}
}


A
bird
came
down
the
walk


strtok finds the next token in a byte string
(function)

2022.07.31 http://cppreference.com

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.