在c语言中全局变量i和局部变量i有相互影响吗?

#define int i;
int i=4;
void main()
{
int i,g,k;
g=2;
i=3;
k=i+g;
}
就是这样的例子 当然编写不是很正规。懂意思即可!

第1个回答  2013-05-20
没有,局部变量使用完就没了
第2个回答  2013-05-20
在main函数中的i仍是局部变量分配在堆栈中的地址,局部变量i会覆盖全局变量i的
第3个回答  2013-05-20
局部会覆盖全局,你的例子改变的是局部的变量。但可加::访问全局,比如::i=3,这样改变的就是全局的。
第4个回答  2013-05-20
局部变量覆盖全局变量,除非用 :: 指名使用全局变量
第5个回答  2013-05-20
最好不要这样,首先程序可读性不行,其次,容易出错!追问

为什么 ?我编写的函数有点多 在这里卡住了 就是在这里纠结了 编译系统在编译的时候是怎样编译的?

追答

就是编译出错了!就算编译通过,运行也会在不知道哪个时刻出问题的,这种牛角还是别钻了,没有多大意义的。

追问

我表示思维卡住了 编译没有卡住

相似回答