Условная компиляция
Пример
#if АВС + 3
Истина, если конвтантное выражение АВС + 3 не равно нулю #fdef идентификатор
Пример
#ifdef АВС
Истина, если идентификатор АВС определен ранее командой #define #ifndef идентификатор
Пример
#ifndef АВС
Истина, если идентификатор АВС не определен в настоящий момент #else
#endif
Если предшествующие проверки #if, #ifdef или #ifndef дают значение Истина, то строки от #else до #endif игнорируются при компиляции
Если эти проверки дают значение Ложь, то строки 01 проверки до #else (а при отсутствии #else — до #endif) игнорируются Команда #endif обозначает конец условной компиляции
Пример
#ifdef DEBUG
iprmtf (stderr, "location x = %d\ n", x), #endif