Você está na página 1de 5

Manipulação de String

Profª Roberta Braga Tôrres


E-mail: roberta@ucam-campos.br
Manipulação de String
Introdução
 Em C não existe um tipo de dado STRING. No seu lugar é utilizado
um vetor de caracteres.
 Uma string é um vetor do tipo char que termina com '\0‘ (caracter
nulo).
 Por essa razão uma string deve conter uma posição a mais do que
o número de caracteres que se deseja, por conta do ‘\0’.
 Constantes strings são uma lista de caracteres que aparecem entre
aspas, não sendo necessário colocar o '\0', que é colocado pelo
compilador.
 A biblioteca string.h deve ser incluída nos programas que fazem
uso das rotinas de manipulação de string.
Manipulação de String
Declaração da String
 Sintaxe: char nome_da_string[tamanho];
 Isto declara um vetor de caracteres (uma string) com
número de posições igual a tamanho. Como temos que
reservar um caractere para ser o caracter nulo, tem-se que
definir o comprimento da string como sendo, no mínimo,
um caractere maior que a maior string que pretendemos
armazenar.
 Vamos supor que declaremos uma string de 7 posições,
para armazenar a palavra João. Teremos:
Manipulação de String
String x Vetor
 Como a string é representado por um vetor, a mesma pode
ser manipulada como tal.
 Exemplo:
// percorre a string como vetor, mostrando células não utilizadas
Char string1[10]; int x;
Cin>>string1;
for (x=0; x < 10; x++)
{ cout<<string1[x];}
Manipulação de String
Rotina STRCPY
 Objetivo: Copia o conteúdo de uma string.
 Sintaxe: strcpy(destino,origem);
 Exemplo:
void main(){
char str[80];
strcpy(str,"alo");
Cout<< str;
}
Manipulação de String
Rotina STRCAT
 Objetivo: Concatena duas strings. Não verifica tamanho.
 Sintaxe: strcat(string1,string2);
 Exemplo:
void main()
{
char um[20],dois[10];
strcpy(um,"bom");
strcpy(dois," dia");
strcat(um,dois);
Cout << um; // imprime bom dia
}
Manipulação de String
Rotina STRCMP
 Objetivo: Compara duas strings, se forem iguais devolve 0.
 Sintaxe: strcmp(s1,s2);
 Exemplo:
void main()
{ char s[80];
Cout << "Digite a senha:";
Cin >> s;
if (strcmp(s,"laranja") == 0)
cout << "senha ok \n";
else
cout << "senha invalida \n";
}
Manipulação de String
Rotina STRLEN
 Objetivo: Retorna o tamanho de uma string.
 Sintaxe: strlen(str);
 Exemplo:
void main()
{ char s[80];
Cout << "Digite uma palavra:";
Cin >> s;
Cout << “Tamanho da string ”<< strlen(s) ;
// percorre a string como vetor, mostrando apenas as células usadas
for (x=0; x < strlen(string1); x++)
{ cout << " \n “ << string1[x]; }
}
Manipulação de String
Rotina TOUPPER
 Objetivo: converte letra por letra em maiúsculo. Rotina
implementada na bibliteca ctype.h
 Sintaxe: toupper( str[x] );
 Exemplo:
void main()
{ char str[80];
printf("Digite uma palavra:");
gets(str);
// converte letra por letra em maiúsculo
for (x=0; x < strlen(str); x++)
{ cout << toupper(str[x]); } // biblioteca ctype.h
}
Manipulação de String
String x Vetor
 Programa que armazena nomes em um vetor
#include <stdio.h>
#include <string.h>
void main()
{ char vNomes[5] [20]; //vetor de 5 posições para armazenar nomes com 20 caracteres
int x;
for (x=0; x < 5; x++)
{ cout << “Informe um nome: ”;
cin >> vNomes[x];
}
for (x=0; x < 5; x++)
{ cout << “\n ” << vNomes[x]; }
}

Você também pode gostar