関数定義とは
これまでは、main 関数のみを定義し、関数本体の部分にプログラムを記述してきました。さらに、長いブログラムを記述する場合は、一つの関数(main関数)だけでなく、新たに関数を定義して別の関数として定義するとモジュール化をすることができます。
返り値の型 関数名(引数宣言の並び) { 関数の本体 } |
例えば以下のように定義することができます。
int func(int arg1, int arg2) { int r; r = arg1+arg2; return 0; } |
関数funcは、2つの引数arg1、arg2 を渡され、これらの値を足し、呼ばれた側にその値を返します。つまり、以下のように呼び出します。
int func(int arg1, int arg2) { int r; r = arg1+arg2; return r; } int main() { int rr; rr = func(5,6); printf("5 + 6 = %d\n",rr); return 0; } |
引数(argument)には、変数宣言と同様に記述することができます。上のように、機能が独立したプログラムを新たな関数として定義します。
関数呼出し
定義した関数を呼出すためには、以下のように記述します。
関数名(引数の並び)
引数の数は、定義した関数と同じでなければなりません。上のプログラムでは、
func( 5, 6 )
と指定します。
return 文
関数の値を(呼び出し側に)返す文がreturn文です。
return 式
と記述します。