Der Preprozessor generiert aus einer Eingabedatei das eigentliche C-Programm, das dann vom C-Compiler übersetzt wird.

  • Dateien für die Übersetzung einfügen
  • Entfernen von Kommentaren
  • Bedingte Übersetzung (#ifndef ect.)
  • Textersatz durch Makros

Dateien einbinden

#include
  • Mit Spitzen Klammern wird in den Standardbibliotheken gesucht
  • Mit Anführungszeichen wird im Lokalen Verzeichnis gesucht

Probleme: Bibliotheken müssen übersetzt werden -> Lösung: precompiled-Header, die brauchen allerdings wieder Speicherplatz

Bezeichnung für Werte

#define NAME wert
 
bzw. zum entfernen
 
#undef NAME

Mit Parametern:

#define NAME(Par1,Par2) xyz

Bedingte Übersetzung

#ifdef DEBUG
bzw. 
#ifndef DEBUG
 
#else
 
#endif