Referencia c

Hivatkozás: C / C ++

#if, #ifdef, #ifndef, #else, #elif és #endif

Irányelv #if, #ifdef, #ifndef, #else, #elif és #endif használt szelektív összeállításának különböző programot töredékek. Az alapötlet az, hogy ha a kifejezés után az irányelvek #IF, #ifdef és #ifndef, igaz, akkor lefordított kód közötti egyik ilyen három irányelv, és az irányelv #endif; különben a kód lesz hagyva. #endif irányelv jelzésére használt blokk végén #ha. #else irányelv lehet használni bármelyik irányelvek fent felsorolt, hogy egy alternatív kiviteli alakja a összeállítása.







Az általános formája #ha irányelv rekord néz ki.

Ha az állandó kifejezés igaz, a kód összeállítani, közvetlenül mögötte ezt az irányelvet.

Az általános formája #ifdef irányelv rögzít.

Ha makro-ben megadott #define nyilatkozatot, a kód blokk kerül összeállításra követően #ifdef operátor.







Az általános formája #ifndef irányelv rögzít.

Ha makro-neve nincs megadva, a #define nyilatkozatot, a kód blokk kerül összeállításra követően #ifndef operátor.

Itt egy példa a közös munka néhány előfeldolgozó irányelvek.

Ennek eredményeként a program rész lesz látható a képernyőn az „Helló”, „Ted” és a „Hello, John”, és az „Helló, George” - nem.

#elif irányelv létrehozásához használt az üzemeltető if-else-if. Az általános formája a következő.

A kezelés több alternatíva lehet használni számos irányelvet # e1if.

Az irányelvek #IF és #elif és predprotsessornoy meghatározott feldolgozás operátor is meghatározhatja, hogy egy adott makrónév határozza előfeldolgozó irányelv meghatározza. Ebből a célból, az alábbi általános jelölés használható.

Ha macroname meghatározni posledovatelnost_operatorov kell összeállítani. Ellenkező esetben, akkor lehet hagyni. Például a következő részletben feltételes állítás fordításakor a DEBUG makró nevét határozza meg a program.

Az üzemeltető is definiálható, hogy megelőzze tagadás művelete (!), És akkor a feltételes fordítási sikertelen lesz, ha a megadott makró neve nincs megadva.




Kapcsolódó cikkek