/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
Откройте диалоговое окно Страницы свойств проекта. Подробнее см. в статье Настройка компилятора C++ и свойства сборки в Visual Studio.
Перейдите на страницу свойств Свойства конфигурации>C/C++>Командная строка.
Введите параметр компилятора в поле "Дополнительные параметры ".
Установка данного параметра компилятора программным способом
- См. раздел GeneratePreprocessedFile.
Пример
Следующая предварительная обработка ADD.C
командной строки сохраняет комментарии, добавляет #line
директивы и отображает результат на стандартном выходном устройстве:
CL /E /C ADD.C
См. также
Параметры компилятора MSVC
Синтаксис командной строки компилятора MSVC