ヘッダファイル | Programming Place Plus 用語集

トップページ用語集

名称

解説

C言語や C++ において、おもに宣言を記述するファイルのことです。

多くの場合、拡張子として .h を用います。C言語で書かれたヘッダファイルと、C++ で書かれたヘッダファイルを区別するために、C++ では拡張子 .hpp を使うこともあります。

ヘッダファイルは、ほかのファイルから取り込まれるかたちで使用されます。具体的には、#include というプリプロセッサディレクティブを使用して、プリプロセッサに指示を与えることによって、#include を記述した位置に、指定したヘッダファイルの中身をそのまま展開します。この「展開」のことをインクルードと呼びます。

// my_program.h

// 関数の宣言
// 定義は my_program.c にある。
extern int get_my_score(void);
#include "my_program.h"  // my_program.h をインクルードする
                         // my_program.h の内容がここに展開される

int main(void)
{
     // ...

     // my_program.h のインクルードによって、
     // この位置から get_my_score() の宣言が見えているので、
     // 呼び出すことができる。
     int score = get_my_score(); 

     // ...

     return 0;
}

C言語を使った詳しい解説は、C言語編第23章を参照。


ヘッダファイルの内容がそのまま展開されるだけなので、ヘッダファイルに記述するソースコードは、C言語や C++ の通常の文法規則に沿ったものであり、特別なルールがあるわけではありません。

ヘッダファイルとインクルードのしくみがあることによって、たとえば呼び出したい関数の宣言を、そのつど、それぞれのソースファイルに記述する必要がなくなります。これは記述量を減らすだけでなく、宣言のミスを防ぐ効果がありますし、定義の変更(引数や個数を変更したなど)に自動的に追従できる意味もあります。


参考リンク

更新履歴


用語集のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
X で ポストフォロー LINE で送る noteで書く
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る