ETAPA 2:
Resolva o seguinte exerccio:
Suponha que um inteiro precise de quatro bytes, um nmero real precise de oito
bytes e um caractere precise de um byte. Pressuponha as seguintes definies e
declaraes:
struct nametype {
char first[10];
char midinit;
char last[20];
};
struct person {
struct nametype name;
int birthday[2];
struct nametype parents[2];
int income;
int numchildren;
char address[20];
char city[10];
char state[2];
};
s t r u c t person p [ 1 0 0 ] ;
Se o endereo inicial dep for 100, quais sero os endereos iniciais (em
bytes) de cada um dos seguintes?
a. p[10]
b. p [200] . name. midinit
c. p[ 20] .income
d. p[20] .address[5]
e. p [ 5 ] . parents [ 1 ] . l a s t [ 1 0 ]
(Referncia: exerccio 1.3.3, pag 83 do PLT)
Reposta:
a= 1510
b= 28311
c= 3022
d= 3035
e= 896
ETAPA 3:
Responda as seguintes questes sobre ponteiros:
1. O que um ponteiro? E para que serve um ponteiro?
Em programao, um ponteiro ou apontador um tipo de dado de uma linguagem
de programao cujo valor se refere diretamente a um outro valor alocado em outra
rea da memria, atravs de seu endereo. Um ponteiro uma simples
implementao do tipo referncia que serve para indicar, ou armazenar, um
endereo de memria.
Ponteiro no um int, float, double ou char e sim um tipo de dado que armazena o
endereo em que esses esto alocado.
7. Qual a instruo que deve ser adicionada ao programa seguinte para que ele
funcione corretamente?
main ( ) {
int j, *pj;
*pj = 3;
}
main ( ) {
int j, *pj;
pj = &j;
*pj = 3;
}