/EP (#line ディレクティブを挿入しない stdout へのプリプロセス)
更新 : 2007 年 11 月
C と C++ のソース ファイルに対してプリプロセスが実行され、プリプロセスされたファイルが標準出力デバイスにコピーされます。
/EP
解説
プロセスでは、すべてのプリプロセッサ ディレクティブが実行され、マクロ拡張が実行されて、コメントが削除されます。プリプロセスの出力のコメントを保持するには、/C (プリプロセス時のコメントの保持) オプションと /EP オプションを併用します。
/EP オプションはコンパイルを中止します。プリプロセス済みファイルをコンパイルに再送信する必要があります。また /EP は、/FA、/Fa、および /Fm の各オプションによる出力ファイルも出力しません。詳細については、「/FA、/Fa (リスティング ファイル)」および「/Fm (マップ ファイルの名前の指定)」を参照してください。
処理の後半で生成されたエラーは、元のソース ファイルではなく、プリプロセス済みファイルの行番号を参照します。元のソース ファイルの行番号を参照するには、代わりに /E (プリプロセス出力の標準出力へのコピー) を使用します。/E オプションを指定すると、#line ディレクティブが出力に挿入されるため、エラーの発生した場所が見つかりやすくなります。
#line ディレクティブを使ったプリプロセス済みの出力を任意のファイルに送るには、/P (プリプロセス出力のファイルへの書き込み) オプションを使用します。
#line ディレクティブを使ったプリプロセス済みの出力を標準出力に送るには、/P と /EP を併用します。
/EP オプションでは、プリコンパイル済みヘッダーは使用できません。
Visual Studio 開発環境でこのコンパイラ オプションを設定するには
プロジェクトの [プロパティ ページ] ダイアログ ボックスを開きます。詳細については、「方法 : プロジェクト プロパティ ページを開く」を参照してください。
[C/C++] フォルダをクリックします。
[プリプロセッサ] プロパティ ページをクリックします。
[プリプロセス ファイルの生成] プロパティを変更します。
このコンパイラ オプションをコードから設定するには
- GeneratePreprocessedFile を参照してください。
使用例
次のコマンド ラインは、ADD.C ファイルをプリプロセスし、コメントを保持し、結果を標準出力デバイスに表示します。
CL /EP /C ADD.C