Função strtok

Arquivo header:

#include <string.h>

Sintaxe

char * strtok( char * endereçoStrOrigem, char * endereçoStrDelimitador);


A função strtok devolve um ponteiro para a próxima palavra na string apontada por endereçoStrOrigem. Os caracteres que formam a string apontada por endereçoStrDelimitador são os delimitadores que terminam a palavra. Um ponteiro nulo é devolvido quando não há mais palavras na string.

Na primeira chamada à função strtok, o endereçoStrOrigem é realmente utilizado na chamada. Nas chamadas seguintes deve-se usar um ponteiro nulo como primeiro argumento.

Pode-se utilizar um conjunto diferente de delimitadores para cada chamada à strtok.

/* strtok.c */
 
#include <stdio.h>
#include <string.h>
 
int main(void)
{
   char *psRetorno;
   char sFrase[]="Mario Quintana, o maior poeta gaúcho";
 
   printf("\nFrase = %s", sFrase);
 
   /* Primeira pesquisa por espaço em branco. */
   psRetorno = strtok(sFrase, " ");
 
   printf("\nRetorno = %s", psRetorno);
   printf("\nFrase = %s", sFrase);
 
   do
   {
      /* Nas próximas chamadas, deve-se passar um ponteiro “nulo”. 
         Isto “indica” para a função que a pesquisa deve continuar 
         no ponteiro anterior. */
      psRetorno = strtok('\0', ", "); //Demais pesquisas por , (vírgula) ou espaço em branco.
 
      /* Um valor nulo (NULL) é considerado sempre falso em comparações 
         booleanas (verdadeiro ou falso). */
      if(psRetorno)
      {
         printf("\nRetorno = %s", psRetorno);
      } 
   } while(psRetorno);
   return 0;
}

Marcos Laureano 2009/05/11 18:10

strtok.txt · Última modificação: 2009/05/11 18:08 por laureano
CC Attribution-Noncommercial-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0