next up previous contents
Next: 3. 関数の終了 Up: 11. 関数 II Previous: 1. 関数の定義

2. 関数の引数

関数に情報を渡すには、引数を使う。引数の型及び順序は、呼び出し元と関数の 定義とで一致していなければならない。 関数の引数の宣言は、次のように書く。


    関数名( 引数の型 引数変数名 [,...]){ }

我々は、今までに型として、int, float, char を習っているので、これらを 使う事が出来る。


例1
    arg1( int a ){
        printf("引数は、%d\n", a);
    }

この例では、引数は1個で、型は整数、変数名は、a である。 この引数の変数名は、呼び出し元に使う変数の名前とは無関係である事に注意 しよう。ここで使う(関数の引数宣言の変数名)は、関数の中でだけ有効な 名前である。


例 2
    arg1( int a ){
        printf("引数は、%d\n", a);
    }

    main()
    {
        arg1(3);
    }

例 2 では、main 関数から、arg1 関数を呼び出しているが、 引数には変数を使わず、値 3 を直接書いている。この場合、関数 arg1 の引数 a には 3 が代入される。


例 3
    arg1( int a ){
        printf("引数は、%d\n", a);
    }
    main()
    {
        int b;
        b = 2;
        arg1(b);
    }

例 3 では、今度は、main 関数の中で、整数変数 b を宣言し、2 を代入し、それを関数 arg1 に渡している。この時、呼び出される 関数arg1 の変数 a には、2 が代入される。

これまでの例は、引数が1個の場合であったが、複数の場合は、カンマ(,) で区切って 同じように宣言してやれば良い。


例 4
    arg2( int a, char c ){
        printf("引数は、整数 %d と文字 %c です。\n", a, c);
    }



Noriyo Kanayama 平成14年11月26日