main()
{
f();
}
int f( int i, float fl)
{
printf("function");
}
f ()が宣言される前に呼び出されているため、上記のコードが「C」で正常に実行され
function
、エラーを報告する必要があるときに出力されるのはなぜですか。「C」で正常に実行されている場合は、「C++」では実行できません。C ++で実行すると、次のように表示されます。
error: 'f' was not declared in this scope
宣言されていない関数が int を返し、指定されていない数の引数を受け入れるとコンパイラが想定しているなどの理由がある場合、以下の関数でも正常に実行されるのはなぜですか (つまり、戻り値の型をintではなくvoidに返す場合は?
void f ( int i, float fl)
{
printf("function");
}