Apuntadors En C
Apuntadors
Gestió Aeronàutica Informàtica Avançada
Curs 12-13
Escola d’Enginyeria
Informàtica Avançada
Apuntadors
Memòria
Com s’emmagatzemen lesdades a l’ordinador?
variable
contingut Adreça de memòria @1001 @1002 @1003 @1004 @1005
TotalRecaptat
preuBitllet numMaletes idVol numClients
?? 17 ?? IB3541 100
Com ens referim a lesadreces de memòria?
Informàtica Avançada
Apuntadors
Exemple
int preuBitllet; la variable preuBitllet queda associada a @1002 variable
totalRecaptat preuBitllet numClients
contingut ?? 17Adreça de memòria @1001 @1002 @1005
100
A quina instrucció, amb variables, equival @1001 = @1002 * @ 1005?
Informàtica Avançada
Apuntadors
Definició
Un apuntador és una variable queemmagatzema adreces de memòria corresponents a d’altres variables. emmagatzemar l’adreça “apuntar”
memòria
@1001 variable x:
5
@1002 @1003
p: apuntador
@1002
@1004 @1005Informàtica Avançada
Apuntadors
Declaració
DECLARACIÓ D’ APUNTADORS
*; Es declara igual que qualsevol variable, però hi afegim l’asterisc “*”
EXEMPLES int *p; float *PunterReal; char *P_Ch;Informàtica Avançada Apuntadors
L’apuntador PunterReal, emmagatzemarà l’adreça d’una variable de tipus float.
Inicialització
Cal inicialitzar-lo!!!!!!!!! Com es fa?
int numMaletes; int *pnumMaletes;string *pidVol;
string idVol;
numMaletes = 30; pnumMaletes = numMaletes ; pnumMaletes = &numMaletes; pnumMaletes = &idVol; pidVol = &idVol;
Informàtica Avançada
Apuntadors
Operadors
Icom treballem el contingut de l’adreça de memòria?
variable
numMaletes
idVol numClients
contingut 30 IB3541 100
Adreça de memòria @1003 @1004 @1005
pnumMaletes
*pnumMaletes = 30
&retorna l’adreça de memòria que ocupa aquesta variable
= &;
*
*&var
retorna el contingut de l’adreça de memòria que emmagatzema
= *;
= *(&var) i equival a var
Informàtica Avançada...
Regístrate para leer el documento completo.