Поделиться через


/E (Предварительная обработка до stdout)

Предварительно обрабатывает исходные файлы C и C++ и копирует предварительно обработанные файлы на стандартное выходное устройство.

Синтаксис

/E

Замечания

В этом процессе выполняются все директивы препроцессора, выполняются расширения макросов, а примечания удаляются. Чтобы сохранить комментарии в предварительно обработанных выходных данных, используйте параметр компилятора /C (сохранение комментариев во время предварительной обработки).

/E добавляет #line директивы к выходным данным в начале и конце каждого включенного файла и вокруг строк, удаленных директивами препроцессора для условной компиляции. Эти директивы переначисливает строки предварительно обработанного файла. В результате ошибки, созданные на последующих этапах обработки, ссылаются на номера строк исходного исходного файла, а не строки в предварительно обработанном файле.

Параметр /E подавляет компиляцию. Необходимо повторно отправить предварительно обработанный файл для компиляции. /E также подавляет выходные файлы из параметров /FA, /Fa и /Fm. Дополнительные сведения см. в разделе /FA, /Fa (Файл перечисления) и /Fm (Имя Mapfile).

Чтобы отключить #line директивы, используйте параметр /EP (preprocess to stdout Без директив #line) вместо этого.

Чтобы отправить предварительно обработанные выходные данные в файл вместо stdoutтого, чтобы использовать параметр /P (Preprocess to a File) вместо этого.

Чтобы отключить #line директивы и отправить предварительно обработанные выходные данные в файл, используйте /P и /EP вместе.

Нельзя использовать предварительно скомпилированные заголовки с параметром /E .

Обратите внимание, что при предварительной обработке в отдельный файл пробелы не создаются после маркеров. Это может привести к незаконной программе или иметь непреднамеренные побочные эффекты. Следующая программа успешно компилируется:

#define m(x) x
m(int)main( )
{
   return 0;
}

Однако при компиляции с помощью:

cl -E test.cpp > test2.cpp

int main в test2.cpp неправильно будет intmain.

Установка данного параметра компилятора в среде разработки Visual Studio

  1. Откройте диалоговое окно Страницы свойств проекта. Подробнее см. в статье Настройка компилятора C++ и свойства сборки в Visual Studio.

  2. Перейдите на страницу свойств Свойства конфигурации>C/C++>Командная строка.

  3. Введите параметр компилятора в поле "Дополнительные параметры ".

Установка данного параметра компилятора программным способом

Пример

Следующая предварительная обработка ADD.Cкомандной строки сохраняет комментарии, добавляет #line директивы и отображает результат на стандартном выходном устройстве:

CL /E /C ADD.C

См. также

Параметры компилятора MSVC
Синтаксис командной строки компилятора MSVC