Strings em C


Introdução


Funções de manipulação de Strings

Função Descrição
gets(s1) Leitura via teclado da string s1
strcpy(s1, s2) Copia sobre s1 o valor de s2
strcat(s1, s2) Concatena s1 e s2, colocando s2 no final de s1
strlen(s1) Retorna o tamanho de s1 (número de caracteres)
strcmp(s1, s2) Retorna 0 se s1 é igual a s2, negativo se s1 < s2 ou positivo se s1 > s2
strchr(s1, ch) Retorna um apontador para a primeira ocorrência do caractere ch em s1 ou 0 se não achá-lo.
strstr(s1, s2) Retorna um apontador para a primeira ocorrência da string s2 em s1 ou 0 se não achá-lo
 

Exemplo: usando as funções de manipulação de Strings

main() {
   // Declarando Strings
   char s1[30], s2[30], s3[30];

   // Faz a leitura de Strings
   gets(s1);
   gets(s2);

   // Mede o tamanho das Strings (strlen)
   printf("tamanho de s1 = %d\n", strlen(s1));
   printf("tamanho de s2 = %d\n", strlen(s2));

   // Concatena Strings e guarda na primeira (strcat)
   printf("s1 concatenado com s2 = %s\n", strcat(s1, s2));

   // Copia o valor de uma String em outra
   printf("copiando s1 para s3 = %s\n", strcpy(s3, s1));

   // Compara Strings (strcmp)
   printf("s1 comparado com s2? %d\n", strcmp(s1, s2));
   printf("s1 comparado com s3? %d\n", strcmp(s1, s3));
   printf("s2 comparado com s1? %d\n", strcmp(s2, s1));

   // Procura um caractere na String (strchr)
   printf("caractere \'a\' existe em s1 ? %d\n", strchr(s1, 'a'));

   // Procura por uma String dentro de outra (strstr)
   printf("string \"abc\" existe em s1 ? %d\n", strstr(s1, "abc"));
}