c++中为什么不能对全局变量在函数外赋值?

2025-04-13 19:45:54
推荐回答(2个)
回答1:

你要考虑到,在全局中,语句的执行顺序是没有保证的,所以只能在声明的时候定义.

假设允许这样的赋值,那你觉得下面这个程序应该怎么样执行呢?

int i;
i=1;
int main()
{
++i;
}
++i;

回答2:

在函数外赋值 就变成了 函数外有了赋值语句。
c/c++ 程序结构不允许。
赋值语句要写在子程序里或主程序main()里。

在函数外,你可以用初始化:
int i=1;
main(){.。。}