我正在经历以下代码,但它让我陷入困境,在下面的代码中,int y=5
,语句位于程序末尾,而main
函数也有返回语句,因此即使在到达最后一个语句之前,程序控件也会返回到编译器,那么这段代码是如何工作的。
#include<stdio.h>
int x = 10 ;
int main( )
{
extern int y;
printf(“The value of x is %d n”,x);
printf(“The value of y is %d”,y);
return 0;
}
int y=50;
您仔细阅读了该程序。
int y=50;
不在函数作用域内main()
。它在main()
外面.它是一个全局变量,就像int x = 10 ;
一样
因此,您的main()
不应该在执行时达到此语句。但是,为了提高可读性,将所有全局变量声明和定义放在文件的开头是事实上的标准。