next up previous contents
Nächste Seite: Funktionen Aufwärts: Aufbau eines C-Programms Vorherige Seite: Übersetzungseinheiten   Inhalt

Deklarationen

Jeder Quelltext besteht aus einer Reihe von Deklarationen. EIne Deklaration definiert einen Namen für eine im Programm verwendete Größe und hat gegebenenfalls noch andere Konsequenzen seitens des übersetzers zur Folge. Deklariert man z.B. eine Variable vom Typ int mit dem Namen x, so wird entsprechend der Größe des angegebenen Typs Speicher reserviert. Im weiteren Verlauf der Übersetzung ,,kennt`` der Übersetzer nun diesen Namen x und assoziiert mit ihm die entsprechende reservierte Speicherstelle.

Es ist auch möglich, eine Variable extern zu deklarieren. Das bedeutet, daß es eine Variable des angegebenen Typs bereits gibt oder geben wird,. in einem anderen Modul, und sich alle Referenzen auf diesen Namen auf die Variable beziehen sollen.

Daklariert man eine Funktion nebst zugehörigem Funktionsrumpf, so wird semantisch gleichwertiger Maschinencode erzeugt, und für diesen ebenfals Speicher reserviert. Im weiteren Verlauf der Übersetzung ,,kennt`` der Übersetzer nun die ,,Signatur`` der Funktion (Namen, Anzahl und Typ der Parameter, Rückgabetyp) und assoziiert den erzeugten Maschinencode mit dem Namen der Funktion. Er kann, wenn die Funktion aufgerufen wird, einen Sprung auf den Maschinencode übersetzen, Checken, ob Nazahl und Typ der übergabeparameter stimmen, evtl. Daten in den angegebenen Typ konvertieren etc.


next up previous contents
Nächste Seite: Funktionen Aufwärts: Aufbau eines C-Programms Vorherige Seite: Übersetzungseinheiten   Inhalt
Thomas Neuhaus
2001-01-14