Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Директивы препроцессора, такие как #define и #ifdef, используются для упрощения изменения и компиляции исходных программ в разных средах выполнения. Директивы в исходном файле сообщают препроцессору выполнять определенные действия. Например, препроцессор может заменять токены в тексте, вставлять содержимое других файлов в файл исходного кода или отключать компиляцию части файла путем удаления разделов текста. Директивы препроцессора обрабатываются перед расширением макроса. Таким образом, если макрос расширяется в то, что выглядит как команда препроцессора, она не распознается препроцессором.
Инструкции препроцессора используют тот же набор символов, что и инструкции исходного файла, за исключением того, что escape-последовательности не поддерживаются. Набор символов в операторах препроцессора совпадает с кодировкой выполнения. Препроцессор также распознает отрицательные значения символов.
Препроцессор распознает следующие директивы:
Знак номера (#) должен быть первым нехитовый символ в строке, содержащей директиву. Символы пробелов могут отображаться между знаком номера и первой буквой директивы. Некоторые директивы содержат аргументы или значения. Любой текст, следующий за директивой (кроме аргумента или значения, который является частью директивы), должен предшествовать одно строковый комментарий разделителя (//) или заключен в разделители комментариев (/* */). Строки, содержащие директивы препроцессора, можно продолжить сразу перед маркером конца строки с обратной косой чертой (\).
Директивы препроцессора могут отображаться в любом месте исходного файла, но они применяются только к остальной части исходного файла после их появления.
См. также
Операторы препроцессора
Предустановленные макросы
Справочник по препроцессору c/c++