1

重複の可能性:
宣言が func() と {} の間にあるのはなぜですか?

C では、関数本体の前に、関数シグネチャに続いて変数を宣言するとはどういう意味ですか?

例:

int foo (i) int i {
    printf ("the value of variable 'i' is: %d", i);
    return i;
}

変数 i の初期化に加えてコードをコンパイルすると、「パラメータを初期化できません: p」というコンパイル エラーが発生します。

4

1 に答える 1

5

古いコードを見ていることを意味します。これは古い K&R 構文です。
基本的に、iは引数で、intです

次のように書き換えることができます。

int foo (int i) 
{
    printf ("the value of variable 'i' is: %d", i);
    return i;
}
于 2012-10-07T01:28:14.547 に答える