10.3 プリプロセッサ(pre-prosessor)

  2.Cプリプロセッサ:cppの解説
 cppは、GNU-C互換のコンパイラプリプロセッサです。Cプリプロセッサは、実際のコンパイルの前にプログラムを変換するためにCコンパイラから自動的に利用されるマクロプロセッサです。長い記述を簡略してマクロとして定義することができるため、マクロプロセッサと呼ばれます。

 例えば、ANSI Standard Cでは、今日Cプログラムで一般的に用いられている多くの(無害な)構造が認められていません。この非互換性 はユーザにとっては不便であり、そのためGNU C pre-prosessorではこの記述をデフォルトで受け付けるように作られています。

 Cプリプロセッサは、以下の4つの機能を提供します。
(1)ヘッダファイルを読み込みます。これはプログラムに組み込まれる (C言語の)宣言の入ったファイルです。

(2)C言語の任意の部分の省略形として マクロを定義 し、Cプリプロセッサがプログラム内の全てのマクロをその定義で置き換えます。

(3)条件文の処理をします。専用のプリプロセッサコマン ドを用いて、いろいろな条件にしたがってプログラムの一部を含めたり除外したりできます。

(4)行番号の制御をします。ソースファイルとコンパイルされた中間ファイルとを組み合わせたり再アレンジしたりするプログラムを用いる場合、コンパイラにオリジナルのソースの何行目であるかを知らせるための、行番号制御のプリプロセッサコマンドを利用できます。