1.2 関数の宣言と定義

  4.関数の呼び出し

/* 関数mainの定義 */ 
int main(void)
{ 
  int x, y;              /* 関数の引数となる変数 */ 
  int val;              /* 関数が求めた値を格納する変数 */ 
  x = 2;               /* 関数の第1引数 */ 
  y = 1;               /* 関数の第2引数 */ 
  /* 関数呼び出し */ 
  val = func(x, y);         /* 結果をvalに格納 */ 
  printf("val = %d\n", val);   /* 関数値を表示 */ 
}

 関数呼び出しは、
 関数名(実引数,実引数,...)
という形で行われます。例の場合は、関数名がfunc、実引数がx, yです。

 実引数が存在しない場合は、関数名()として呼び出します(括弧は省略できない)。 例えば、func()のように記述します。実引数には実際に参照可能な変数、式、値を指定する必要があります。

 よって、例のように変数だけでなく、func(2,x*2)のように定数値や計算式でも指定可能です。このことは、実引数の値を仮引数に代入する、と考えれば、容易に理解できるでしょう。

 関数が値を返す場合は、その値を参照することができます。上のプログラムでは、関数が値(この場合は、3*x+2*y+1の計算結果)を返すため、その値を val という変数に代入しています。