これまでは、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文です。
と記述します。