Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

LAPRO	I
Prof.	Dr.	Rafael	Garibotti
Pontifícia	Universidade	Católica	do	Rio	Grande	do	Sul	
Faculdade	de	Informática	- FACIN
v Baseado no	material	cedido pelos Profs.	Dr.	Marco	Mangan e	Dr.	Matheus	Trevisan
STRINGS
AULA	SOBRE:
STRINGS
1
Ø Conceito:
ü É	um	conjunto de	caracteres,	ou	seja,	em	C	são vetores de	caracteres.
ü Tamanho	da	string:	deve	ser	um	caractere	maior	que	o	máximo	tamanho	
armazenado. É	possível	seu	tamanho	na	declaração.
char buffer[50];
ü Utiliza-se	(‘\0’) para	informar	final	da	string.
• O	último	caractere	não	pode	ser	utilizado!
• Neste	exemplo,	apenas	as	posições	de	0	a	48	são	possíveis,	onde	a	
posição 49	deve	possuir	um	\0.
ü Headers para	manipulação	de	strings.
#include <string.h>
STRINGS
2
Variável Conteúdo
M
A
R
I
A
\0
10
11
12
13
14
15
[0]
[1]
[2]
[3]
[4]
[5]
nome
Ø Declaração:
char nome[6];
Ø Atribuição entre	strings:
ü Uma	das	maneiras de	fazer
atribuição	é	de	posição por posição.	
ü strings	sempre comeca̧m na posição
zero	(0).
nome[0] = 'M';
nome[1] = 'A'; 
Endereço de
memória
STRINGS
3
Ø Exemplo:
#include <stdio.h>
int main(){
char nome1[6];
nome1[0] = 'M';
nome1[1] = 'A';
nome1[2] = 'R';
nome1[3] = 'I';
nome1[4] = 'A';
nome1[5] = '\0';
printf("O nome é %s\n", nome1);
printf("A terceira letra da string é %c\n", nome1[2]);
return 0;
}
STRINGS
4
Ø Leitura	de	strings do	teclado:
ü Função	gets()
• Lê	string até	o	primeiro	enter.
• Observação:	a	função	gets()	não	realiza	qualquer	verificação	de	limites	na	
string.	Logo,	se	o	usuário	inserir	uma	string maior	que	o	tamanho	definido,	a	
função	escreverá	a	string ultrapassando	seus	limites.
ü Função	scanf()
• Lê	string até	o	primeiro	espaço	em	branco.
Ø Exemplo:
...
char palavra[20];
gets(palavra);
scanf("%s", palavra);
...
STRINGS
5
#include <string.h>
Ø C	suporta	uma	ampla	gama	de	funções	de	manipulação	de	strings.
ü strcpy(str1, str2)
• Copia	str2	em	str1.
ü strcat(str1, str2)
• Concatena	str2	ao	final	de	str1.
ü int tam = strlen(str1)
• Retorna	o	tamanho	de	str1.
ü int valor = strcmp(str1, str2)
• Retorna	0	se	str1	e	str2	são	iguais;	<	que	0	(zero)	se	str1<str2;	>	que	0	(zero)	
se	str1>str2.
STRINGS
6
Ø Exemplo:
#include<stdio.h>
#include<string.h>
int main() {
char nome1[12], nome2[12], nome3[15];
strcpy(nome1, "Carolina");
strcpy(nome2, "Rodrigo");
strcpy(nome3, "Ana Julia");
printf("Nome1 é %s\n", nome1);
printf("Nome2 é %s\n", nome2);
printf("Nome3 é %s, tamanho: %lu\n", nome3, strlen(nome3));
return 0;
}
STRINGS
7
Ø Exemplo:
#include<stdio.h>
#include<string.h>
int main() {
char nome1[5], nome2[6], nome12[12]={'\0'};
strcpy(nome1, "Jose");
strcpy(nome2, "Maria");
strcat(nome12, nome1);
strcat(nome12, " ");
strcat(nome12, nome2);
printf("Concatenação de nomes é %s.\n", nome12);
return 0;
}
STRINGS
8
Ø Exemplo:
#include<stdio.h>
#include<string.h>
int main() {
char s1[80], s2[80];
gets(s1);
gets(s2);
printf("Comprimentos: %lu %lu\n", strlen(s1), strlen(s2));
if(strcmp(str1,str2) == 0)
printf("Strings iguais.\n");
strcat(s1, s2);
printf("%s \n", s1);
strcpy(s1, "Isto é um teste.\n");
printf("%s \n", s1); 
return 0;
}
Ø Se	for	digitado	"alo" e	"alo":
Comprimentos:	3	3
Strings iguais.
aloalo
Isto	é um	teste.
ATIVIDADE
LABORATÓRIO
9
Ø As	atividades	do	laboratório	da	aula	de	hoje	estão no	Moodle.

Mais conteúdos dessa disciplina