プログラムを複数の手続きに分けて開発すると、同じ変数の宣言などが それぞれの手続きごとに出てくることがある。多くの場合、同じ名前の変数は 同じ型や値で使いたいのだが、別々に書いておくと、プログラムの修正の 過程で食い違ってしまうおそれがある。そこで、そういった宣言はプログラム 本体とは別に書いておき、コンパイル時に取りこんだほうがよいという考え方 が出てきた。特にC言語では、このような取り込みをしないとプログラムが 書けないことが多い。取り込まれるのを目的に用意されたプログラムの断片を ヘッダファイル(header file)という。他の言語ではこのような取り込み機能 が言語の標準として備わっているとは限らないが、それぞれのコンパイラが そういう機能を提供しているのがふつうである。
しかし、このような取り込み機能では、ヘッダファイルは取り込まれて はじめてプログラム言語の文法に合っているかどうかを検査されるので、 ヘッダファイルとプログラム本体の開発が独立にできない。 「モジュール化」の考えの進んだプログラム言語では、ソースプログラム での取り込みではなく、共通の変数などは別にモジュールとしてコンパイル しておき、プログラム本体からそのモジュールを参照する方式がよいとされる。 たとえば、Fortranの90年標準では、取り込み機能のINCLUDE文があるものの、 あまり勧められないとされ、モジュール機能が勧められている。
INCLUDE 'ファイル名'ファイル名には、Cシェルの場合と違って、「~」による指定は使えない。
#include "ファイル名"ただし、コンパイラとともに用意されているヘッダファイルを取りこむ場合は
#include <ファイル名>である。