在C++中,在声明函数之前调用函数是一个编译器错误.但在C语言中,它可能会编译.
#include<stdio.h>
int main()
{
foo(); // foo() is called before its declaration/definition
}
int foo()
{
printf("Hello");
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试过并且知道它是正确的,但我无法理解它背后的原因.任何人都可以解释编译过程是如何实际发生的,并且两种语言都有所不同.