#ifdef<< Zurück zum Index >>defined

#ifndef

Mittels der #ifndef-Direktive wird genauso wie bei der #if-Direktive eine bedingte Compilierung eingeleitet. Der Preprozessor prüft hier jedoch, ob das angegebene Makro inexistent ist.

#include <stdio.h> // #define THE_BIG_NUMBER 99999999 int main(){ #ifndef THE_BIG_NUMBER printf("No Big number defined.\n"); #else printf("Big number: %d\n", THE_BIG_NUMBER); #endif return 0; }

No Big number defined.

Siehe auch #ifdef, #if, #define, defined

Details

Die #ifndef-Direktive bewirkt dasselbe wie #if ! defined.

Die #ifndef-Direktive wertet den zu prüfenden Audruck nicht aus, sondern prüft lediglich dessen Existenz. Wenn das angegebene Makro nicht existiert, so ist die Bedingung erfüllt und der Code innerhalb des Blocks wird compiliert. Andernfalls wird er komplett verworfen.

Häufig trifft man die #ifndef-Direktive im Zusuammenhang mit dem einmaligen Einbinden von Dateien an.

 

#ifdef<< Zurück zum Index >>defined