Zeigervariable ( Pointer)

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.