Você está na página 1de 9

STRINGS

 Definição
 É um vector de caracteres (char).

 É um caso especial de vectores, cujo último elemento é o


caracter ‘\0’
 Declaração:
 char nome_string[TAM];

UniMETRO/FATEC/LCC-BIF ProgramaçãoII/
M.T.Ditutala
STRINGS – Funções de Manipulação
3

 Em C existem um conjunto de funções da biblioteca


<string.h>, que são usadas na manipulação com
strings.
 Cópia de uma String
 strcpy (string_destino,string_origem);
 Copia a string de origem para a string de destino
 Lê-se string copy
 Notar que a string de origem não sofre qualquer modificação.

UniMETRO/FATEC/LCC-BIF ProgramaçãoII/
M.T.Ditutala
STRINGS – Funções de Manipulação
4

 Concatenação de Strings
 strcat (string_destino,string_origem);

 Junta a string de origem no fim da string de destino

 Lê-se string cat

 Notar que a string de origem não sofre qualquer modificação.

UniMETRO/FATEC/LCC-BIF ProgramaçãoII/
M.T.Ditutala
STRINGS – Funções de Manipulação
5

 Comparação de Strings
 strcmp (string_1,string_2);

 Compara as duas strings. O resultado da função é um inteiro. Dependo


da comparação a função devolve:

> 0 -- se string_1 > string_2

 Lê-se string compare = 0 -- se string_1 == string_2

< 0 -- se string_1 < string_2

UniMETRO/FATEC/LCC-BIF ProgramaçãoII/
M.T.Ditutala
STRINGS – Funções de Manipulação
6

 Comprimento de uma String


strlen (string);
 Calcula o comprimento da string fornecida.
 A mesma retorna o número de carectares da string até encontrar o
primeiro caracter ‘\0’.
 A função não conta o caracter NULL (‘\0’), pelo que o real valor do
comprimento da string obtém-se adicionando uma unidade ao
resultado retornado por strlen. Sendo assim:

 Cumprimento = strlen(string) + 1;

 Lê-se string length

UniMETRO/FATEC/LCC-BIF ProgramaçãoII/
M.T.Ditutala
STRINGS – Funções de Manipulação
7

 Leitura de uma String


gets(string);
 Lê a string (linha completa) introduzida (em geral pelo teclado - stdin),
até encontrar o caracter ‘\n’.
 É uma função não recomendada pois não garante a leitura apenas do
tamanho reservado para a string, o que pode provocar violação de
endereçamento da memória.

UniMETRO/FATEC/LCC-BIF ProgramaçãoII/
M.T.Ditutala
STRINGS – Funções de Manipulação
8

 Escrita de uma String


puts(string);
 Escreve a string (linha completa), que lhe é passada como argumento,
em geral para o ecrán - stdout).
 Ao encontrar o caracter ‘\n’, introduz a mudança de linha.

UniMETRO/FATEC/LCC-BIF ProgramaçãoII/
M.T.Ditutala
STRINGS – Exercícios
9
#include <stdio.h> printf ("\n\nA string que você digitou
#include <string.h> tem %d caracteres
int main () ",size);
{
int size; printf ("\n\nDigite outra string: ");
char str1[100],str2[100]; gets (str2);
printf ("Digite uma string: "); if (strcmp(str1,str2))
gets (str1); printf ("\n\nAs duas strings são
diferentes.");
strcpy (str2,"Voçê digitou a string "); else printf ("\n\nAs duas strings são
strcat (str2,str1); iguais.");
/* str2 armazenara' Você digitou a return(0);
string + o conteúdo de str1 }
*/
printf ("\n\n%s",str2);
size=strlen (str1);
Fonte: Pag.61 e 62 – Manual da Linguagem C, de
UniMETRO/FATEC/LCC-BIF ProgramaçãoII/
M.T.Ditutala Paulo Valentim, ECB

Você também pode gostar