wcstok(3)

NOME
wcstok - separa uma string de caracteres largos em tokens

BIBLIOTECA
Biblioteca C Padrão (libc, -lc)

SINOPSE
#include <wchar.h>

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

DESCRIÇÃO
A função wcstok() é o equivalente de caracteres largos da função strtok(), com um argumento adicional para torná-la segura para multithread. Ela pode ser usada para separar uma string de caracteres largos wcs em tokens, onde um token é definido como uma substring 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 para além de quaisquer caracteres largos que ocorrem em delim. Se o fim da string 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, substituindo 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.

VALOR DE RETORNO
A função wcstok() retorna um ponteiro para o próximo token, ou NULO se nenhum token adicional foi encontrado.

ATRIBUTOS
Para uma explicação dos termos usados nesta seção, consulte attributes(7).
Interface | Atributo | Valor
wcstok() | Thread safety | MT-Safe

PADRÕES
C11, POSIX.1-2008.

HISTÓRICO
POSIX.1-2001, C99.

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

EXEMPLOS
O seguinte código percorre os tokens contidos numa string de caracteres largos.

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

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

TRADUÇÃO
A tradução para português brasileiro desta página man foi criada por Felipe M Pereira <Felipe.Pereira@ic.unicamp.br>, André Luiz Fassone <lonely_wolf@ig.com.br> e Rafael Fontenelle <rafaelff@gnome.org>.

Esta tradução é uma documentação livre; leia a Licença Pública Geral GNU Versão 3 (https://www.gnu.org/licenses/gpl-3.0.html) ou posterior para as condições de direitos autorais. Nenhuma responsabilidade é aceita.

Se você encontrar algum erro na tradução desta página de manual, envie um e-mail para a lista de discussão de tradutores (debian-l10n-portuguese@lists.debian.org).