Условная компиляция.
Директивы условной компиляции, позволяют генерировать программный код в зависимости от выполнимости определенных условий. Условная компиляция обеспечивается в языке C набором команд, которые, по существу, управляют не компиляцией, а препроцессорной обработкой:
Первые три команды выполняют проверку условий, две следующие - позволяют определить диапазон действия проверяемого условия. Последняя команда используется для организации проверки серии условий. Общая структура применения директив условной компиляции такова:
Различие между формами команд #if состоит в следующем. 1. В первой из перечисленных директив #if проверяется значение константного целочисленного выражения. Если оно отлично от нуля, то считается, что проверяемое условие истинно. Например, в результате выполнения директив:
текст_1 всегда будет включен в компилируемую программу. 2. В директиве #ifdefпроверяется, определен ли с помощью команды #define к текущему моменту идентификатор, помещенный после #ifdef. Если идентификатор определен, то текст_1 используется компилятором. 3. В директиве #ifndefпроверяется обратное условие - истинным считается неопределенность идентификатора, т.е. тот случай, когда идентификатор не был использован в команде #define или его определение было отменено командой #undef. Для организации мульти ветвлений во время обработки препроцессором исходного текста программы введена директива
является сокращением конструкции #else#if. Структура исходного текста с применением этой директивы такова:
A, теперь, рассмотрим несколько примеров. ©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.
|