4. Mám ukazovateľ, čo s ním?
4.3 Dereferenčný operátor *
Ukazovatele by nám boli nanič, keby sme pomocou nich nemohli manipulovať s obsahom pamäťových miest, na ktoré ukazujú. Hodnotu premennej, na ktorú ukazuje pointer, sprístupníme pomocou operátora *. Tento operátor je tiež unárny (je v podstate opakom &), operandom je však vždy smerník. Operátor * sa nazýva aj dereferenčný operátor.
Ak p je pointer, tak *p je premenná, na ktorú ukazuje. Môžeme jej priradiť hodnotu napr. priraďovacím príkazom
*p = 22;
použiť ako parameter funkcie alebo ju možeme vypísať na obrazovku monitora:
printf("%d", *p); .
Obsah premennej *p
môžeme použiť všade tam, kde potrebujeme použiť premennú príslušného
typu (v našom príklade typu int). Nasledujúce príkazy sú preto zrejme
úplne ekvivalentné. Predpokladáme, že p ukazuje na premennú i:
printf("%d", i); printf("%d", *p);
i = 2002; *p = 2002;
|