啊哈磊_编程从这里起步
标题:
关于全局变量和局部变量的优先顺序解析
[打印本页]
作者:
Dear
时间:
2016-2-18 21:50
标题:
关于全局变量和局部变量的优先顺序解析
如题 先上代码
[mw_shl_code=c,true]#include <stdio.h>
int a=1;
int main()
{
int a=0;
printf("%d",a);
return 0;
} [/mw_shl_code]
上面这个代码的运行结果是0
因为在全局变量中 虽然相同的全局变量不能重复定义 但是却可以定义与全局变量同名的局部变量
例如上面的
全局变量a=1 局部变量a=0
当定义与全局变量同名的局部变量时
全局变量会暂时失效
这就可以解释为什么打印出来的结果是0了
本人也是新手 希望有帮助
虽然代码简短 但在以后做小项目时定义全部变量 与 局部变量时 防止冲突是很重要的(因为这个编译器并不会报错)
作者:
rosynirvana
时间:
2016-2-21 19:15
不止是全局和局部
某个作用域内再定义一个变量,总是会屏蔽上层作用域的同名变量
作者:
邀请码
时间:
2016-2-21 19:19
rosynirvana 发表于 2016-2-21 19:15
不止是全局和局部
某个作用域内再定义一个变量,总是会屏蔽上层作用域的同名变量
rosynirvana大神回来了~!
欢迎光临 啊哈磊_编程从这里起步 (https://bbs.codeaha.com/)
Powered by Discuz! X3.2