C ++ strtok () - Biblioteca padrão C ++

A função strtok () em C ++ retorna o próximo token em uma string de bytes terminada em nulo.

protótipo strtok ()

 char * strtok (char * str, const char * delim);

A strtok()função leva dois argumentos: str e delim. Esta função encontra o token na string apontada por strtok. O delimitador do ponteiro aponta para os caracteres separadores.

Essa função pode ser chamada várias vezes para obter tokens da mesma string. Existem dois casos:

  • Se str não for NULL:
    Uma chamada para strtok () é considerada a primeira chamada para aquela string. A função procura o primeiro caractere que não está contido em delim. Se nenhum caractere for encontrado, a string não contém nenhum token. Portanto, um ponteiro nulo é retornado. Se tal caractere for encontrado, a partir daí a função busca um caractere que esteja presente em delim. Se nenhum separador for encontrado, str tem apenas um token. Se um separador for encontrado, ele será substituído por ' 0' e o ponteiro para o caractere seguinte será armazenado em um local estático para invocações subsequentes. Finalmente, a função retorna o ponteiro para o início do token.
  • Se str for NULL:
    a chamada é considerada como chamadas subsequentes para strtok e a função continua de onde saiu na chamada anterior.

É definido no arquivo de cabeçalho "> arquivo de cabeçalho.

Parâmetros strtok ()

  • str: Ponteiro para a string de bytes terminada em nulo a ser tokenizada.
  • delim: Ponteiro para a string de bytes terminada em nulo que contém os separadores.

strtok () Valor de retorno

A strtok()função retorna o ponteiro para o próximo token, se houver, ou retorna NULL, se nenhum outro token for encontrado.

Exemplo: como funciona a função strtok ()

 #include #include using namespace std; int main() ( char str() = "parrot,owl,sparrow,pigeon,crow"; char delim() = ","; cout << "The tokens are:" << endl; char *token = strtok(str,delim); while (token) ( cout << token << endl; token = strtok(NULL,delim); ) return 0; )

Quando você executa o programa, a saída será:

 Os tokens são: papagaio, coruja, pardal, pombo, corvo

Artigos interessantes...