Escolar Documentos
Profissional Documentos
Cultura Documentos
1
Memória do Computador
0xAD03
0xAD04
00100011 0xAD05
Dados
01110000 0xAD06
endereços
0xAD07
0xAD08
0xAD09
2
Armazenando dados na memória
0xAD03
0xAD04
int a;
00100011 0xAD05
Dados
a = 9072; 01110000 0xAD06
endereços
0xAD07
0xAD08
0xAD09
3
Armazenando dados na memória
0xAD03
0xAD04
int a;
00100011 0xAD05
Dados
a = 9072; 01110000 0xAD06
Endereço
0xAD07 de a
0xAD08
0xAD09
int ocupa dois bytes
4
Operador sizeof
0xAD03
0xAD04
int a;
00100011 0xAD05
Dados
a = 9072; 01110000 0xAD06
Endereço
0xAD07 de a
0xAD08
0xAD09
int ocupa dois bytes
5
Operador sizeof
sizeof - operador unário usado para determinar
o tamanho em bytes de qualquer tipo de dado.
Ponteiro
Uma variável pode ser localizada:
• diretamente usando seu identificador, ou
• indiretamente usando seu endereço.
0xAD03
0xAD04
00100011 0xAD05
01110000 0xAD06
0xAD07 Ponteiro
0xAD08 para
0xAD09 variável a
7
Manipulando Ponteiros
8
Declaração de Ponteiros
9
Declaração de Ponteiros Exemplo
0xAD03
int a; 0xAD04
Int *Ptr; 00100011 0xAD05 a
01110000 0xAD06
a = 9072;
0xAD07 aPtr
0xAD08
0xAD09
10
Operador de endereço &
11
Inicialização de Ponteiros
0xAD03
int a; 0xAD04
Int *Ptr = &a; 00100011 0xAD05 a
01110000 0xAD06
a = 9072;
0xAD05 0xAD07 aPtr
0xAD08
0xAD09
12
Ponteiro nulo
Inicialização de Ponteiros
um ponteiro deve sempre ser inicializado antes de ser usado
13
Conversão de Ponteiro
exemplo
14
Ponteiro void
float F;
int *ptr ;
Não exige conversão (coerção).
ptr=F;
15
Operador de indireção *
Conteúdo da variável
apontado por ptr.
16