/P (вывод результатов предварительной обработки в файл)
Обновлен: Ноябрь 2007
Выполняет предварительную обработку файлов на языке C и С++ и записывает выходные данные предварительной обработки в файл.
/P
Заметки
Файл имеет базовое имя исходного файла и расширение I. В процессе выполняются все директивы препроцессора и расширения макросов и удаляются комментарии. Чтобы сохранить комментарии в выходных данных предварительной обработки, используйте вместе с параметром /C (сохранять комментарии во время предварительной обработки) вместе с /P.
/P добавляет в выходном файле директивы #line в начале и в конце каждого включенного файла, а также вокруг строк, удаленных директивами препроцессора для условной компиляции. Директивы перенумеровывают строки предварительно обработанного файла. В результате, ошибки, созданные на более поздних этапах обработки, ссылаются на номера строк исходного файла, а не номера строк предварительно обработанного файла. Чтобы запретить создание директив #line, используйте вместе с параметром /P параметр /EP (предварительная обработка в поток стандартных выходных файлов без директив #line).
Параметр /P запрещает компиляцию. OBJ-файл не создается, даже когда используется /Fo (имя объектного файла). Следует повторить отправку предварительно обработанного файла для компиляции. Параметр /P также запрещает создание выходных файлов в результате использования параметров /FA, /Fa (файл листинга), /FA, /Fa (файл листинга) и Параметр /Fm (имя файла сопоставления).
Установка данного параметра компилятора в среде разработки Visual Studio
Откройте диалоговое окно проекта Страницы свойств. Дополнительные сведения см. в разделе Открытие свойств страниц проекта.
Выберите папку C/C++.
Выберите страницу свойств Препроцессор.
Измените значение свойства Создать файл препроцессора.
Установка данного параметра компилятора программным способом
- См. раздел GeneratePreprocessedFile.
Пример
Следующая командная строка предварительно обрабатывает ADD.C, сохраняет комментарии, добавляет директивы #line и записывает результаты в файл ADD.I:
CL /P /C ADD.C