int i;
int * p;
În prezent, nu există nici o valoare atribuită fie I sau p. În continuare, sa atribui o valoare de i și apoi atribui p pentru a indica adresa de i
i = 3;.
p = & i;
Aici Puteti vedea ampersand (&) utilizat ca operatorul adresa imediat înainte i, adică " adresa i "., Nu trebuie să știu ce adresa este de a face repartizarea. Asta e bine, pentru că acesta va fi probabil diferit de fiecare dată când executați programul! În schimb, operatorul adresa va determina adresa asociată cu faptul că variabila timp ce programul se execută. Fără ca operatorul adresa, cesiunea p = i-ar atribui p adresa de memorie de 3, literalmente, mai degrabă decât adresa de memorie a variabilei i.
În continuare, să ne uităm la modul în care puteți utiliza indicii în cod C și provocările cu care vă veți dori să fie pregătiți pentru.
Utilizarea Pointeri corect în C
Odată ce aveți un pointer, aveți posibilitatea să utilizați că, în loc de o variabilă de același tip de date în operațiuni și funcție solicită. În următorul exemplu, indicatorul a i este folosit în loc de i în cadrul unei operațiuni mai mare. Asterisc utilizat cu p (* p) indică faptul că operațiunea ar trebui să utilizeze valoarea pe care p indică spre la acea adresă de memorie, nu adresa de memorie în sine:
int b;
b = * p + 2;
Fără indicii, este aproape imposibil de a împărți sarcinile în funcții în afara de principal în programul tău C. Pentru a ilustra acest lucru, ia în considerare ați creat o variabilă în principal numit h care stochează inaltimea utilizatorului la cel mai apropiat centimetru.