Escolar Documentos
Profissional Documentos
Cultura Documentos
Parte I
1
Ponteiro
2
Ponteiro
3
Ponteiro
5
Ponteiro
6
Ponteiro
Exemplos:
7
Ponteiro
10
Ponteiro: manipulação
No exemplo:
int count = 10;
int *pt;
pt = &count; //pt, recebe o endereço de count
Após essa indicação de pt=&count, podemos alterar o
valor de count usando pt.
No exemplo acima, uma vez que fizemos pt=&count;
podemos utilizar a expressão *pt como equivalente para
manipular o conteúdo da variável count indiretamente.
Se quisermos mudar o valor de count para 12, basta
acrescentar a seguinte linha:
*pt =12; //altera o conteúdo apontado por pt.
O que acabamos de fazer foi uma alteração indireta do
conteúdo da variável count.
Logo, o operador "inverso" de & é o operador *.
11
Ponteiro: manipulação
Ex2:
12
Ponteiro: manipulação
Ex:main()
13
Ponteiro perdido
14
Ponteiro perdido
15
Exemplos:
16
Operações com ponteiros
17
Operações com ponteiros
Incremento:
quando incrementamos um ponteiro ele passa a
apontar para o próximo endereço de acordo com o tipo
para o qual o ponteiro aponta.
Isto é, se temos um ponteiro para um inteiro e o
incrementamos ele passa a apontar para o próximo
inteiro. Se você incrementa um ponteiro char* ele anda
1 byte na memória e se você incrementa um ponteiro
double* ele anda 8 bytes na memória. O decremento
funciona semelhantemente.
18
Operações com ponteiros - Exemplo
19
Operações aritméticas com ponteiros
20
Operações aritméticas com ponteiros
22
Operações aritméticas com ponteiros
24
Ponteiro manipulação - Exemplo
25
Ponteiro manipulação
26
Ponteiro para ponteiro
27
Ponteiro para ponteiro
Exemplo:
28
Ponteiro para ponteiro
29
Exercícios
30
Exercícios
31