Baixe o app para aproveitar ainda mais
Prévia do material em texto
ECT1203 Linguagem de Programação 2012.1 Prof. Diego Rodrigues de Carvalho Profa. Idalmis Milián Sardina Prof. Luiz Eduardo Cunha Leite Prof. Marconi Câmara Rodrigues Prof. Marcelo Henrique Ramalho Nobre Aula 09 – Strings Universidade Federal do Rio Grande do Norte Escola de Ciências e Tecnologia Hora de silenciar o celular Manter o celular sempre desligado/silencioso quando estiver em sala de aula Nunca atender o celular em sala de aula Objetivo da aula Apresentar Strings em C++: Leitura e Escrita de Strings Funções de manipulação de String Exemplos de utilização de String String Cadeia de caracteres Pode ser representado por um vetor de caracteres (matriz unidimensional) Terminada por \0 (nulo ou zero) Definição Lendo e escrevendo char nome[50]; //declarando um string cin >> nome; //lendo cout << nome; //escrevendo Lendo e escrevendo Outras formas de ler e escrever: Para usar gets e puts, é necessário incluir o arquivo de cabeçalho cstdio gets coloca o ‘\0’ no final do string puts pula uma linha (coloca o ‘\n’ no final) String – Funções de cstring strcpy(s1, s2) Copia s2 em s1 strcat(s1, s2) Concatena s2 ao final de s1 strlen(s1) Retorna o tamanho de s1 strcmp(s1, s2) Retorna 0 se s1 e s2 forem iguais; menor que 0 se s1 < s2; maior que 0 se s1 > s2 strcpy #include <iostream> #include <cstring> #include <cstdio> using namespace std; int main() { char nomeA[50]; char nomeB[50] = "Silva"; strcpy(nomeA,"Joao"); puts(nomeA); strcpy(nomeA,nomeB); puts(nomeA); return 0; } EXEMPLO strcpy(s1, s2) copia s2 em s1 nomeA passa a ser “Joao” nomeA passa a ser “Silva” #include <iostream> #include <cstring> #include <cstdio> using namespace std; int main() { char nomeA[50] = “Joao”; char nomeB[50] = “ Silva"; strcat(nomeA,nomeB); puts(nomeA); return 0; } strcat strcat(s1, s2) concatena s2 ao final de s1 EXEMPLO nomeA passa a ser “Joao Silva” **** falta o espaço entre nomeA e nomeB 9 strlen #include <iostream> #include <cstring> #include <cstdio> using namespace std; int main() { char nomeA[50] = "Joao"; char nomeB[50] = " Silva"; puts(nomeA); cout <<"Tamanho de nomeA: “<<strlen(nomeA)<< endl; puts(nomeB); cout <<"Tamanho de nomeB: “<<strlen(nomeB)<< endl; strcat(nomeA,nomeB); puts(nomeA); cout <<"Tamanho de nomeA depois do strcat: ” <<strlen(nomeA)<< endl; return 0; } EXEMPLO strlen(s) retorna o tamanho de s strcmp strcmp(s1,s2) retorna 0 se s1 = s2; menor que 0 se s1 < s2; maior que 0 se s1 > s2 #include <iostream> #include <cstring> #include <cstdio> using namespace std; int main() { char nomeA[] = "ect"; char nomeB[] = "ECT"; char nomeC[] = "et"; char nomeD[] = "ect"; cout <<“strcmp(ect,ECT) “ <<strcmp(nomeA,nomeB)<< endl; cout <<"strcmp(ect,et) ” <<strcmp(nomeA,nomeC)<< endl; cout <<"strcmp(ect,ect) ” <<strcmp(nomeA,nomeD)<< endl; return 0; } EXEMPLO Exercício 1 Faça um algoritmo para converter uma cadeia de caracteres de letras maiúsculas em letras minúsculas. Exercício 2 Dado o nome completo de uma pessoa imprimir apenas as iniciais seguidas cada uma de ponto e espaço. Exercício 3 Codifique um programa na linguagem C que leia uma string de tamanho x, leia outra string de tamanho y e depois concatene as duas em outra string de tamanho x+y. Concatenar significa unir as duas strings (não é permitido utilizar a função strcat).
Compartilhar