/P (вывод результатов предварительной обработки в файл)/P (Preprocess to a File)

Предварительно обрабатывает исходные файлы C и C++ и записывает предварительно обработанные выходные данные в файл.Preprocesses C and C++ source files and writes the preprocessed output to a file.

СинтаксисSyntax

/P

ПримечанияRemarks

Файл имеет такое же базовое имя исходного файла и расширение i.The file has the same base name as the source file and an .i extension. В процессе выполняются все директивы препроцессора, расширения макросов и комментарии будут удалены.In the process, all preprocessor directives are carried out, macro expansions are performed, and comments are removed. Чтобы сохранить комментарии в предварительно обработанные выходные данные, используйте /C (сохранять комментарии во время предварительной обработки) вместе с параметром /P.To preserve comments in the preprocessed output, use the /C (Preserve Comments During Preprocessing) option along with /P.

/P добавляет #line директивы в выходные данные, в начале и конце каждого включенного файла, а также вокруг строк, удаленных директивами препроцессора для условной компиляции./P adds #line directives to the output, at the beginning and end of each included file and around lines removed by preprocessor directives for conditional compilation. Эти директивы перенумерации строки из предварительно обработанного файла.These directives renumber the lines of the preprocessed file. В результате ошибки, созданные в более поздних этапах обработки см. для номера строки исходного файла, а не строк предварительно обработанного файла.As a result, errors generated during later stages of processing refer to the line numbers of the original source file rather than lines in the preprocessed file. Чтобы подавить формирование #line использовать директивы, /EP (Предварительная обработка в stdout без директив #line) производительны /P.To suppress the generation of #line directives, use /EP (Preprocess to stdout Without #line Directives) as well as /P.

/P параметр отменяет компиляцию.The /P option suppresses compilation. Он не создает OBJ-файл, даже если вы используете /Fo (имя объектного файла).It does not produce an .obj file, even if you use /Fo (Object File Name). Отправьте предварительно обработанного файла для компиляции.You must resubmit the preprocessed file for compilation. /P также подавляются выходные файлы из /FA, /Fa, и /Fm параметры./P also suppresses the output files from the /FA, /Fa, and /Fm options. Дополнительные сведения см. в разделе /FA, /Fa (файл листинга) и /Fm (имя файла сопоставления).For more information, see /FA, /Fa (Listing File) and /Fm (Name Mapfile).

Установка данного параметра компилятора в среде разработки Visual StudioTo set this compiler option in the Visual Studio development environment

  1. Откройте диалоговое окно Страницы свойств проекта.Open the project's Property Pages dialog box. Дополнительные сведения см. в разделе свойств компилятора и собранной задать C++ в Visual Studio.For details, see Set C++ compiler and build properties in Visual Studio.

  2. Откройте папку C/C++ .Click the C/C++ folder.

  3. Нажмите кнопку препроцессор страницу свойств.Click the Preprocessor property page.

  4. Изменить Создание предварительно обработанного файла свойство.Modify the Generate Preprocessed File property.

Установка данного параметра компилятора программным способомTo set this compiler option programmatically

ПримерExample

Следующая командная строка выполняет предварительную обработку ADD.C, сохраняет комментарии, добавляет #line директивы и записывает результат в файл ADD.I:The following command line preprocesses ADD.C, preserves comments, adds #line directives, and writes the result to a file, ADD.I:

CL /P /C ADD.C

См. такжеSee also

Параметры компилятора MSVCMSVC Compiler Options
Синтаксис командной строки компилятора MSVCMSVC Compiler Command-Line Syntax
/Fi (предварительная обработка имени выходного файла)/Fi (Preprocess Output File Name)