defined

Die defined-Direktive wird bei bedingten Compilierungen verwendet, um bei einer #if- oder #elif-Direktive ein Makro auf Existenz zu prüfen.

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

Small number: -99999999

Siehe auch #ifdef, #ifndef, #if, #elif, #define

Details

Für einfache Makro-Prüfungen sind die #ifdef- und #ifndef-Direktiven vorzuziehen, allerdings ist die defined-Direkteive notwendig, um bei #elif-Direktiven auf Existenz eines Makros zu prüfen, denn es gibt keine Direktiven wie #elifdef oder #elifndef.