C-Programmierung

Präprozessor-Direktiven

Einrückung von Kontrollstrukturen | | Präprozessor Macros

Der Präprozessor (Präcompiler) verarbeitet - vor dem eigentlichen Compilerlauf - den Quelltext einer Programmdatei. Die Verarbeitung ist eine rein textuelle Ersetzung ohne Prüfung der Semantik. Es werden nur ganze Wörter ersetzt.

Der verarbeitete Text wird an den Compiler weitergereicht, dieser sieht also nicht den Originaltext sondern nur das Ergebnis der Arbeit des Präprozessors.

Die Präprozessor-Kommandos, d.h. die sogenannten Präprozessor Direktiven, steuern die textuelle Ersetzung des Quelltextes.

  • Präprozessor-Direktiven belegen immer eine ganze Zeile
  • Präprozessor-Direktiven beginnen mit dem Zeichen #
  • Präprozessor-Direktiven werden nicht mit ; abgeschlossen

Die Präprozessor-Direktive

#define a b

bewirkt, dass im Quelltext sämtliche Vorkommen des Worts a durch das Wort b ersetzt werden.

Die Direktive kann auch wieder aufgehoben werden:

#undef a

Globale Konstanten können mit Hilfe von Präprozessor-Direktiven definiert werden:

#define NAME value

Die Konvention verlangt, derart definierte Konstanten gross zu schreiben, um sie von normalen Variablen bzw. Konstanten unterscheiden zu können.

Beispiel:

#define PI 3.1415926
#define SMALLEST_PRIME 2

Symbolische Darstellung eines Wahrheitswertes:

#define FALSE 0
#define TRUE 1

Der textuelle Inhalt einer anderen Datei kann in den aktellen Text eingefügt werden:

#include "dateiname.suffix"


Einrückung von Kontrollstrukturen | | Präprozessor Macros

Options: