1 #include <stdio.h>
2 void main()
3 {
4 const int kon1 = 100;
5 const int kon2 = 200;
6 const int *const mein_zeiger = &kon1;
7 printf("%p %d", mein_zeiger, *mein_zeiger);
8 mein_zeiger = &kon2;
9 *mein_zeiger = 101;
10 }
Zu 4+5:
Zwei Konstanten werden definiert
Zu 6:
Ein konstanter Zeiger auf die erste Konstante wird definiert.
Zu 7:
Die Adresse auf die der Zeiger zeigt, und der Inhalt dieser
Adresse werden ausgegeben.
Zu 8:
Hier wird versucht, dem konstanten Zeiger einen anderen
Wert zuzuweisen. Weil der Zeiger aber konstant ist, kann er
nicht verändert werden. Die Zeile muß also aus dem
Programm enfernt werden.
Zu 9:
Nun soll die Konstante über ihren Zeiger verändert werden.
Auch dies geht nicht. Der Compiler meldet einen Fehler,
bis die Zeile aus dem Programm entfernt wird.