WCSTOK(3)

NOME
wcstok - separa uma seqüencia de caracateres largos em 'tokens'

SINÓPSE
#include <wchar.h>

wchar_t *wcstok (wchar_t *wcs, const wchar_t *delim, wchar_t **ptr);

DESCRIÇÃO
A função wcstok é equivalente à função strtok para caracteres largos, com um argumento adicional para torná-la segura para multithread. Ela pode ser usada para separar uma seqüencia de caracteres largos wcs em tokens, onde um token é definido como uma subseqüencia que não contém nenhum dos caracteres largos de delim.

A busca inicia em wcs, se wcs não é NULO, ou em *ptr, se wcs é NULO. Primeiramente, quaisquer caracteres largos delimitadores são pulados, ou seja o ponteiro é avançado além de quaisquer caracteres largos que ocorrem em delim. Se o fim da seqüencia de caracteres largos é alcançado neste momento, wcstok retorna NULO, para indicar que nenhum token foi encontrado, e guarda um valor apropriado em *ptr, de forma que chamadas subsequentes a wcstok continuarão retornando NULO. Caso contrário, a função wcstok reconhece o início de um token e retorna um ponteiro para ele, mas antes de fazê-lo, ela termina com zero o token, substituido o próximo caractere largo que ocorre em delim com um caractere L'\0', e ela atualiza *ptr de forma que as chamadas subsequentes continuarão a busca depois do fim do token reconhecido.

VALORES RETORNADOS
A função wcstok retorna um ponteiro para o próximo token, ou NULO se nenhum token adicional foi encontrado.

NOTAS
A seqüencia de caracteres largos original wcs é modificada destrutivamente durante a operação.

EXEMPLO
O seguinte código percorre os tokens contidos numa seqüencia de caracteres largos.

wchar_t *wcs = ...;
wchar_t *token;
wchar_t *estado;
for (token = wcstok(wcs, " \t\n", &estado);
     token != NULL;
     token = wcstok(NULL, " \t\n", &estado)) {
  ...
}

DE ACORDO COM
ISO/ANSI C, UNIX98.

VEJA TAMBÉM
strtok(3), wcschr(3).

TRADUZIDO POR LDP-BR em 14/03/2001.

  Tradução:
Felipe M Pereira <Felipe.Pereira@ic.unicamp.br>

  Revisão.:
André Luiz Fassone <lonely_wolf@ig.com.br>