プロトタイプ宣言
プロトタイプ宣言とは、関数等のプロシージャをソースコードの冒頭部分で宣言して後で定義することを指します。関数のプロトタイプ、という呼ばれ方もします。これは前方宣言の一種としてもみなされ、前方宣言の関数版、と考えると理解が早いと思われます。
実際の例を見た方が理解が早いと思われますので、以下のC言語のコーディング例をご覧ください。
//Sample1
void main( void )
{
func1();
return ;
}
void func1(){
//処理内容
return;
}
上記のソースコードには問題があります。上から読むと分かるようにmain関数内で使用するfunc1()関数が宣言されていないにもかかわらず使用されています。実際にはmain関数の下に宣言がされていますが、これでは使えません。
//Sample2
void func1(){
//処理内容
return;
}
void main( void )
{
func1();
return ;
}
上記例では、順番が改められ、使用することが可能です。しかしこれでは、main関数は常に一番最後に書かねばならないということになります。
//Sample3
//プロトタイプ宣言
void func1();
void main( void ){
func1();
return ;
}
void func1(){
//処理内容
return;
}
そこで先にfunc1()を宣言だけ行い、定義は後で書くというようにしました。そのために冒頭に宣言のみを記載しています。これが前方宣言です。
例を見るとわかるように、事前に宣言されて無ければ使用できないので、宣言だけをする、という話です。