Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

strtok [2009/05/11 18:08] (atual)
laureano criada
Linha 1: Linha 1:
 +====== Função strtok ======
  
 +Arquivo header:
 +<code c>#include <string.h></code>
 +
 +----
 +
 +Sintaxe
 +
 +''[[tipos_dados|char *]] strtok( [[tipos_dados|char *]] endereçoStrOrigem, [[tipos_dados|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''.
 +
 +<code c>
 +/* 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;
 +}
 +</code>
 +
 + --- //[[marcos@laureano.eti.br|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