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;