Dlaczego błąd - wywołanie funkcji przed jej zadeklarowaniem nie jest wyświetlany?
main()
{
f();
}
int f( int i, float fl)
{
printf("function");
}
Dlaczego powyższy kod działa poprawnie w 'C' i drukujefunction
kiedy powinien zgłosić błąd, jakf () jest wywoływany przed ogłoszeniem.
Gdy działa poprawnie w 'C', to dlaczego nie w 'C ++'. Gdy działa w c ++, pokazuje:error: 'f' was not declared in this scope
Jeśli jest tak, ponieważ kompilator zakłada niezadeklarowaną funkcję zwracającą int i akceptującą nieokreśloną liczbę argumentów, to dlaczego działa poprawnie dla poniższej funkcji (tj. Po zwróceniu typu zwracanego dounieważnić zamiastint ?
void f (int i, float fl)
{
printf("function");
}