/E (Przetwarzaj wstępnie do stdout)
Wstępnie przetwarza pliki źródłowe C i C++ i kopiuje wstępnie przetworzone pliki do standardowego urządzenia wyjściowego.
Składnia
/E
Uwagi
W tym procesie są wykonywane wszystkie dyrektywy preprocesora, a rozszerzenia makr są wykonywane, a komentarze są usuwane. Aby zachować komentarze w wstępnie przetworzonych danych wyjściowych, należy również użyć opcji kompilatora /C (Zachowaj komentarze podczas przetwarzania wstępnego).
/E dodaje #line
dyrektywy do danych wyjściowych na początku i na końcu każdego dołączonego pliku oraz wokół wierszy usuniętych przez dyrektywy preprocesora na potrzeby kompilacji warunkowej. Dyrektywy te ponownie określają wiersze wstępnie przetworzonego pliku. W rezultacie błędy generowane na późniejszych etapach przetwarzania odwołują się do numerów wierszy oryginalnego pliku źródłowego, a nie wierszy w wstępnie przetworzonym pliku.
Opcja /E pomija kompilację. Należy ponownie przesłać wstępnie przetworzony plik do kompilacji. /E pomija również pliki wyjściowe z opcji /FA, /Fa i /Fm . Aby uzyskać więcej informacji, zobacz /FA, /Fa (List File) i /Fm (Name Mapfile).
Aby pominąć #line
dyrektywy, zamiast tego użyj opcji /EP (Preprocess to stdout Without #line Dyrektywy).
Aby wysłać wstępnie przetworzone dane wyjściowe do pliku zamiast do stdout
, zamiast tego użyj opcji /P (Wstępne przetwarzanie do pliku).
Aby pominąć #line
dyrektywy i wysłać wstępnie przetworzone dane wyjściowe do pliku, użyj /P i /EP razem.
Nie można używać wstępnie skompilowanych nagłówków z opcją /E .
Należy pamiętać, że podczas przetwarzania wstępnego do oddzielnego pliku spacje nie są emitowane po tokenach. Może to spowodować nielegalny program lub mieć niezamierzone skutki uboczne. Następujący program kompiluje się pomyślnie:
#define m(x) x
m(int)main( )
{
return 0;
}
Jednak w przypadku kompilowania za pomocą polecenia:
cl -E test.cpp > test2.cpp
int main
w test2.cpp będzie niepoprawnie intmain
.
Aby ustawić tę opcję kompilatora w środowisku programowania Visual Studio
Otwórz okno dialogowe Strony właściwości projektu. Aby uzyskać szczegółowe informacje, zobacz Set C++ compiler and build properties in Visual Studio (Ustawianie właściwości kompilatora języka C++ i kompilowania w programie Visual Studio).
Wybierz stronę Właściwości>konfiguracji C/C++>Wiersza polecenia.
Wprowadź opcję kompilatora w polu Dodatkowe opcje .
Aby programowo ustawić tę opcję kompilatora
- Zobacz: GeneratePreprocessedFile.
Przykład
Następujące wstępne przetwarzanie ADD.C
wiersza polecenia , zachowuje komentarze, dodaje #line
dyrektywy i wyświetla wynik na standardowym urządzeniu wyjściowym:
CL /E /C ADD.C
Zobacz też
Opcje kompilatora MSVC
Składnia wiersza polecenia kompilatora MSVC