Version: Test
©Raddy 2001

C-Lehrgang - XI                                          zurück

Zeiger auf
Konstante
a-absatz.pcx (280 Byte)

Einführung

In den vorigen Kapiteln hatten wir gelernt, daß man Konstanten
im Programm nicht mehr verändern kann. Doch was ist, wenn
man Konstante über ihren Zeiger zugreift?

Wir werden sehen, daß auch in diesem Fall die Konstante
vor Änderungen geschützt ist.
      
a-absatz.pcx (280 Byte)

Syntax

    
const datentyp konstante
const datentyp *zeigername = &konstante  
   
a-absatz.pcx (280 Byte)

Beispiel

1   #include <stdio.h>
2   void main()
3   {
4     const int konsta = 100;
5     const int *mein_zeiger = &konsta;       
6     printf("%p %d", mein_zeiger, *mein_zeiger);
7     konsta = 101 // Diese Zeile muß gelöscht werden
8     *mein_zeiger = 101 // Diese Zeile muß gelöscht werden
9   }

Zu 4:
Eine Integerkonstante namens konsta wird deklariert

Zu 5:
Ein Zeiger auf die Konstante wird deklariert.

Zu 6: 
Die Adresse auf die der Zeiger zeigt, und der Inhalt dieser
Adresse werden ausgegeben.

Zu 7: 
Die Konstante soll geändert werden. Dies funktioniert nicht.
Die Zeile muß also aus dem Programm enfernt werden.

Zu 8: 
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.