Eine Variable, in der die Adresse einer anderen Variablen gespeichert ist, nennen wir eine Zeigervariable oder kurz Zeiger bzw. Pointer. Die Variable, deren Adresse im Zeiger gespeichert ist, bezeichnen wir als die durch den Zeiger referenzierte Variable. Über einen Zeiger kann auf die Daten der referenzierten Variablen zugegriffen werden. Wir nennen dies Indirektzugriff oder auch Dereferenzierung. Zum Zugriff auf die referenzierte Variable stellt man der Zeigervariablen den Dereferenzierungsoperator * voran. Ist p ein Zeiger, so ist *p der Wert der referenzierten Variablen. Zeigervariablen müssen, wie alle Variablen, vor ihrer ersten Verwendung definiert werden:
Der
Typ der zu referenzierenden Variablen muss bei der Definition des
Zeigers angegeben werden. Insofern gibt es in C keine Zeiger an
sich, sondern immer nur Zeiger auf etwas. Über
den Adressoperator wird die Verbindung zwischen dem Zeiger und der zu
referenzierenden Variablen hergestellt. Mit Hilfe des
Dereferenzierungsoperators kann über den Zeiger auf die
referenzierte Variable zugegriffen werden:
Achten
Sie immer darauf, dass ein Zeiger eine gültige Referenz enthält,
bevor Sie ihn verwenden. Die sorglose Verwendung von wilden
Zeigern ist eine der Hauptfehlerquellen in C- Programmen.