Version: Test
©Raddy 2001

C-Lehrgang - XI                                          zurück

Ermittlung
der
Speicherzelle
a-absatz.pcx (280 Byte)

Bild

c11s2p1.pcx (8994 Byte)
   
a-absatz.pcx (280 Byte)

Der Adressoperator &

Auf den vorigen Seite hatten wir den Buchstaben a in 
der Variable z gespeichert. Wir hatten angenommen, daß
das Betriebssystem dazu den Speicherplatz 5 gewählt hatte.

Nun wollen wir wirklich das Zeichen a in der Variable z
speichern, und schauen wo die Variable wirklich abgelegt
wird. Dazu benutzt man den Adressoperator &:
Programm:
#include <stdio.h>
void main()
{
char z='a';
printf ("%c \n", z);
printf ("%ld \n", &z);
printf ("%lx \n", &z);
}
Ausgabe:

a
6684148
65fdf4

Achtung! Die Ausgabe ist rechnerabhängig! Dies ist nur ein Beispiel!
Erklärung:
Mit der ersten printf-Anweisung wird die Variable z 
ganz normal ausgegeben.

Bei der zweiten printf-Anweisung steht ein &-Zeichen vor 
der Variable. Weil das & vor der Variable steht, wird 
nicht der Inhalt der Variable ausgegeben, sondern die 
Adresse, an der die Variable z gespeichert ist. Das 
&-Zeichen nennt sich deshalb Adressoperator.

Mit der dritten printf-Anweisung wird die Adresse nochmal
ausgegeben, aber diesmal in der für Adressen üblichen
Hexadezimalschreibweise.