Falls ein Quelltext von mehreren anderen eingebunden mit der #include-Anweisung wird, könnte es passieren, daß er mehrfach compiliert wird. Dies würde aber zu Fehlern führen, alleine deshalb schon, weil Variablen und Funktionen ja schon definiert sind und daher nicht nochmal definiert werden können. Um dies zu vermeiden setzt man solche Quelltexte in folgende Struktur:
#ifndef Dateikennung #define Dateikennung // Code #endif
wobei Dateikennung ein Kürzel ist, das in der Regel aus dem Dateinamen zusammengesetzt ist, um es so zum einen wiedererkennbar zu machen und zum anderen auch eindeutig zu machen. Häufig wird dabei aus Dateinamen wie "MeineDatei.h" eine Dateikennung wie "MEINEDATEI_H", "MEINE_DATEI_H", "__MEINE_DATEI_H__" oder ähnliches gemacht.
Prinzipiell sollte man jede Datei, die dazu gedacht ist, in andere
eingebunden zu werden, so vor einer zweiten Compilierung sichern.
Dies ist vor allem bei den später erläuterten headerdateien
der Fall
.