Вы находитесь на странице: 1из 13

Estrutura de Dados

Profa.: Alessandra Gomes

Agenda
Ponteiros e String:
Objetivo
Exemplos em linguagem C

Ponteiros e String
Objetivo:
Manipular uma cadeia de caracteres utilizando
ponteiros:
Contar caracteres
Copiar caracteres
Criar substrings

Ponteiros e String
char *frase = Hoje e sexta-feira;
//escreve o contedo de frase
printf(%s, frase);
//escreve o endereo de memria de frase
printf(%d, &frase);

Ponteiros e String
Contar caracteres:
char *frase = "Hoje e sexta";
int i = 0;
while (*frase != '\0'){
frase++;
i++;
}
printf("Tamanho da string: %d", i);
H

\0

Este o ponteiro! A cada frase++ ele se desloca para a prxima casa.

Ponteiros e Strings
Exerccios
1. Criar dois ponteiros de String para armazenar
nomes (*nome1, *nome2). Conte o total de caracteres
de cada nome e informe qual o maior (o primeiro
nome o maior ou o segundo nome o maior).
2. Criar dois ponteiros de String para armazenar
nomes (*nome1, *nome2). Conte o total de caracteres
de cada nome e informe se os nomes possuem o
mesmo tamanho.

Ponteiros e String
Copiar caracteres:
char *frase = "Hoje e sexta";
char *fraseDestino;
while (*frase != '\0'){
*fraseDestino = *frase;
fraseDestino++;
frase++;
}
frase = '\0';
char *frase2 = frase - 11;
printf("%s\n", frase2);
printf("%s\n", fraseDestino);

Ponteiros e String
Copiar caracteres:
H

\0

\0

Ponteiros e String
Copiar caracteres:
H

\0

\0

Ponteiros e String
Copiar caracteres:
A cada ++ o ponteiro se desloca at atingir o final
da String.

\0

\0

Ponteiros e String
Criar substring (parte de uma String):
char *frase = "Hoje e sexta";
char *substring;
int i = 0;
while (i < 5){
*substring = *frase;
substring++;
frase++;
i++;
}
substring = '\0';
char *substring2 = frase - 5;
printf("%s\n", substring2);

Ponteiros e Strings
Exerccios
1. Considere a String abaixo:
char *frase = Aula de Estrutura de Dados;

a) Crie um ponteiro que receba uma cpia de *frase.


b) Crie trs ponteiros. O primeiro receber somente a
palavra Aula, o segundo a palavra Estrutura e o
terceiro a palavra Dados.

Dvidas?

Вам также может понравиться