15.3 まとめ

プリプロセッサ

Cのコンパイラは、コンパイル作業の前に一連の作業を行う。これはプリプロセッサ と呼ばれているが、プリプロセッサに命令するためのコマンドの一つが #include 命令である。この命令の意味は、指定したファイルをその場所に 取り込む事である。従って、モジュール間で共有したいファイルなどを取り込むた めに使われ、標準ライブラリなどの部品の関数宣言やその他の定義もこれを用いて ソースに埋めこまれるようになっている。

<>でファイル名を括った場合には標準のパスからしか読み込まない が、

    #include <stdio.h>
"" で括った場合には、カレントディレクトリを探してから標準パスを 探すようになっているので、自作のファイルを取り込む際にはこちらを使う。
    #include "mylist.h"

こうした取り込まれるファイルはヘッダーファイルと呼ばれ、拡張子に .h を用いるのが慣例となっている。

記憶クラス

変数の有効範囲や、寿命は変数の記憶クラスによって決まる。 記憶クラスと寿命の関連を再掲すると以下のようになっている。

変数 宣言場所 記憶クラス指定子 有効範囲 寿命
レジスター変数 関数(ブロック)内部 register 関数(ブロック)内部 消滅
自動変数 関数(ブロック)内部 auto 関数(ブロック)内部 消滅
静的変数 関数(ブロック)内部 static 関数(ブロック)内部 永続
外部変数の引用 関数内部 extern 関数内部 永続
外部変数の引用 関数外部 extern モジュール内部 永続
外部変数 関数外部 無し モジュール全域 永続
静的外部変数 関数外部 static モジュール内部 永続



最初のページ 戻る 次へ 最後のページ 目次
Hiroyasu Asami