Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

wcstok(3) [osx man page]

WCSTOK(3)						   BSD Library Functions Manual 						 WCSTOK(3)

NAME
wcstok -- split wide-character string into tokens LIBRARY
Standard C Library (libc, -lc) SYNOPSIS
#include <wchar.h> wchar_t * wcstok(wchar_t *restrict ws1, const wchar_t *restrict ws2, wchar_t **restrict ptr); DESCRIPTION
The wcstok() function is used to isolate sequential tokens in a null-terminated wide character string, ws1. These tokens are separated in the string by at least one of the characters in ws2. The first time that wcstok() is called, ws1 should be specified; subsequent calls, wishing to obtain further tokens from the same string, should pass a null pointer instead. The separator string, ws2, must be supplied each time, and may change between calls. The context pointer, ptr, must be provided on each call. The wcstok() function is the wide character counterpart of the strtok_r() function. RETURN VALUES
The wcstok() function returns a pointer to the beginning of each subsequent token in the string, after replacing the token itself with a null wide character (L''). When no more tokens remain, a null pointer is returned. EXAMPLES
The following code fragment splits a wide character string on ASCII space, tab, and newline characters, writing the resulting tokens to stan- dard output: const wchar_t *seps = L" "; wchar_t *last, *tok, text[] = L" one two three "; for (tok = wcstok(text, seps, &last); tok != NULL; tok = wcstok(NULL, seps, &last)) wprintf(L"%ls ", tok); COMPATIBILITY
Some early implementations of wcstok() omit the context pointer argument, ptr, and maintain state across calls in a static variable like strtok() does. SEE ALSO
strtok(3), wcschr(3), wcscspn(3), wcspbrk(3), wcsrchr(3), wcsspn(3) STANDARDS
The wcstok() function conforms to ISO/IEC 9899:1999 (``ISO C99''). BSD
October 3, 2002 BSD

Check Out this Related Man Page

WCSTOK(3)						     Linux Programmer's Manual							 WCSTOK(3)

NAME
wcstok - split wide-character string into tokens SYNOPSIS
#include <wchar.h> wchar_t *wcstok(wchar_t *wcs, const wchar_t *delim, wchar_t **ptr); DESCRIPTION
The wcstok() function is the wide-character equivalent of the strtok(3) function, with an added argument to make it multithread-safe. It can be used to split a wide-character string wcs into tokens, where a token is defined as a substring not containing any wide-characters from delim. The search starts at wcs, if wcs is not NULL, or at *ptr, if wcs is NULL. First, any delimiter wide-characters are skipped, that is, the pointer is advanced beyond any wide-characters which occur in delim. If the end of the wide-character string is now reached, wcstok() returns NULL, to indicate that no tokens were found, and stores an appropriate value in *ptr, so that subsequent calls to wcstok() will continue to return NULL. Otherwise, the wcstok() function recognizes the beginning of a token and returns a pointer to it, but before doing that, it zero-terminates the token by replacing the next wide-character which occurs in delim with a null wide character (L''), and it updates *ptr so that subsequent calls will continue searching after the end of recognized token. RETURN VALUE
The wcstok() function returns a pointer to the next token, or NULL if no further token was found. ATTRIBUTES
For an explanation of the terms used in this section, see attributes(7). +----------+---------------+---------+ |Interface | Attribute | Value | +----------+---------------+---------+ |wcstok() | Thread safety | MT-Safe | +----------+---------------+---------+ CONFORMING TO
POSIX.1-2001, POSIX.1-2008, C99. NOTES
The original wcs wide-character string is destructively modified during the operation. EXAMPLE
The following code loops over the tokens contained in a wide-character string. wchar_t *wcs = ...; wchar_t *token; wchar_t *state; for (token = wcstok(wcs, " ", &state); token != NULL; token = wcstok(NULL, " ", &state)) { ... } SEE ALSO
strtok(3), wcschr(3) COLOPHON
This page is part of release 4.15 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/. GNU
2015-08-08 WCSTOK(3)
Man Page