1.2 関数の宣言と定義

  2.関数のプロトタイプ宣言

/* 関数のプロトタイプ宣言 */ 
int func(int x, int y); 
・・・・・・・
/* 関数funcの定義 */
int func(int x, int y)      /* この部分に;をつけたものを関数のプロトタイプ宣言と
                                        して記述すればよい */
{ 
・・・・・・・
} 
 プロトタイプ宣言では、プログラムの中で使う関数の一覧(関数名、および返り値と引数の型)を記述します。これを書くことにより、コンパイラは、関数を呼び出す部分で、関数の返り値のデータ型、引数の型、引数の数をチェックします。また、返り値の型に応じた、返り値の実体用のメモリ確保も行います。

 プロトタイプ宣言は、関数が、実際に定義・呼び出しをする場所よりも「前で」記述する必要があります(本質的)。

 プロトタイプは、関数定義の宣言部に;(セミコロン)をつけたものを代用して構いません。
ただし、プロトタイプ宣言部では、下記のように仮引数の名前を省略することができます。
int func(int, int);
 しかしながら、引数名を記述した方が、引数の意味・目的を捉えやすいため、そのまま記述することをお勧めします。