関数のプロトタイプ宣言
当ページのリンクには広告が含まれています。
スポンサーリンク
ここでは関数のプロトタイプ宣言について解説します。
関数のプロトタイプ宣言
関数を呼び出す場合
「呼び出す関数は使用する前に記述しておく必要がある」
というルールがあります。
しかし、関数が増えてくるとこれらの呼び出し順番を管理するのがめんどくさくなります。
そんなときのために?C言語には「プロトタイプ宣言」という構文が用意されています。これは関数の中身(処理)を記述せずにとりあえず関数を呼び出す前に宣言しておいて、処理の部分は後ほど記述するという方法です。これで、いつでも関数を利用できるようになります。
プロトタイプ宣言
それでは関数のプロトタイプとして宣言する方法をみてみましょう。
戻り値の型 関数名(引数の型);
このように「戻り値の型(関数の型)」「関数名」「引数の型」を指定すれば、OKです。これでプロトタイプ宣言の完了です。
例えば、int型の引数を2つ持つ int型の tasu関数をプロトタイプ宣言する場合は
int tasu(int, int);
このように宣言すれば、OKです。この宣言は呼び出す前に記述しておきましょう。
サンプルプログラム
それでは実際にプロトタイプ宣言を使ったサンプルプログラムをみてみましょう。
#include <stdio.h> /* プロトタイプ宣言 */ void hello(void); int tasu(int, int); int main(void){ int a, b; a = 1; b = 3; /* hello関数の呼び出し */ hello(); /* tasu関数の呼び出し */ printf("%d\n", tasu(a,b)); return 0; } /* tasu関数 */ int tasu(int a, int b){ return a + b; } /* hello関数 */ void hello(void){ printf("Hello, World!\n"); }
実行結果です。
Hello, World! 4
このように関数の呼び出しが適切に行われています。
次は「スコープ - グローバル変数とローカル変数」についてみていきます。