Си++/Препроцессорные директивы: различия между версиями
< Си++
Содержимое удалено Содержимое добавлено
мНет описания правки |
мНет описания правки |
||
Строка 1: | Строка 1: | ||
Практически в любую [[среда разработки|среду разработки]] программ на [[С++]] или [[компилятор]] языка входит такой компонент, как [[препроцессор]]. |
Практически в любую [[среда разработки|среду разработки]] программ на [[С++]] или [[компилятор]] языка входит такой компонент, как [[препроцессор]]. |
||
Назначение препроцессора - это обработка исходного текста программ до её компиляции. Для управления этим компонентом и |
Назначение препроцессора - это обработка исходного текста программ до её компиляции. Для управления этим компонентом и существуют так называемы препроцессорные директивы или, проще говоря, '''препроцессорные команды'''. |
||
Каждая такая команда обязательно начинается со знака '#'. Всего таких команд немного: |
Каждая такая команда обязательно начинается со знака '#'. Всего таких команд немного: |
||
* '''#[[define]]''' - эта директива предусматривает определение [[макрос|макросов]] или препроцессорных [[идентификатор|идентификаторов]], простейшее применение это замены в тексте программы |
* '''#[[define]]''' - эта директива предусматривает определение [[макрос|макросов]] или препроцессорных [[идентификатор|идентификаторов]], простейшее применение это замены в тексте программы |
||
* '''#[[include]]''' - позволяет |
* '''#[[include]]''' - позволяет включать текст других файлов в текст вашей программы. |
||
* '''#[[undef]]''' - отменяет действие директивы #[[define]] |
* '''#[[undef]]''' - отменяет действие директивы #[[define]] |
||
* '''#[[if]]''' - организация условной обработки директив |
* '''#[[if]]''' - организация условной обработки директив |
||
Строка 36: | Строка 36: | ||
===Макросы=== |
===Макросы=== |
||
====Предопределенные |
====Предопределенные макроимена==== |
Версия от 10:45, 18 мая 2006
Практически в любую среду разработки программ на С++ или компилятор языка входит такой компонент, как препроцессор. Назначение препроцессора - это обработка исходного текста программ до её компиляции. Для управления этим компонентом и существуют так называемы препроцессорные директивы или, проще говоря, препроцессорные команды.
Каждая такая команда обязательно начинается со знака '#'. Всего таких команд немного:
- #define - эта директива предусматривает определение макросов или препроцессорных идентификаторов, простейшее применение это замены в тексте программы
- #include - позволяет включать текст других файлов в текст вашей программы.
- #undef - отменяет действие директивы #define
- #if - организация условной обработки директив
- #ifdef - организация условной обработки директив
- #else - организация условной обработки директив
- #endif - организация условной обработки директив
- #elif - организация условной обработки директив
- #line - управление нумерацией строк в тексте программы
- #error - задает текст диагностического сообщения, выводящиеся при наличии ошибок
- #pragma - зависит от среды разработки
- # - нулевая(пустая) директива, ничего не вызывает и всегда игнорируется