-
Notifications
You must be signed in to change notification settings - Fork 0
/
questao10
51 lines (41 loc) · 836 Bytes
/
questao10
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
Em C, uma variável do tipo char ocupa 1 byte e do tipo int ocupa 4 bytes.
Fazendo um programa de teste com esses dois tipos e observando os pulos de memória, temos o seguinte:
1) Usando o tipo char:
#include <stdio.h>
int main(){
char x[4], *p;
p = x;
printf("%x\n",p);
p = x+1;
printf("%x\n",p);
p = x+2;
printf("%x\n",p);
p = x+3;
printf("%x\n",p);
}
/*Temos como saída:
efbff40c
efbff40d
efbff40e
efbff40f
*/
2) Usando o tipo int:
#include <stdio.h>
int main(){
int x[4], *p;
p = x;
printf("%x\n",p);
p = x+1;
printf("%x\n",p);
p = x+2;
printf("%x\n",p);
p = x+3;
printf("%x\n",p);
}
/*Temos como saída:
efbff3f0
efbff3f4
efbff3f8
efbff3fc
*/
Sendo assim, os saltos na memória são realizados do acordo com o esperado para cada tipo declarado.