黑马程序员技术交流社区
标题:
全局变量小疑问
[打印本页]
作者:
joytear
时间:
2015-3-13 18:51
标题:
全局变量小疑问
int b, c = 20; 这句是全局变量的条件 这句话的意思不是应该int b =20 int c =20吗? 为什么结果是int b;?
作者:
岳挺
时间:
2015-3-13 18:56
实际是b = 0;c = 20;这样子的,并不是两个都是20,这跟是不是全局变量没关系吧
作者:
gaizuojia
时间:
2015-3-13 20:38
不是的,int b知识定义了b并没有给b赋值。结果是a=20,b没有值
作者:
一步一个脚印
时间:
2015-3-13 21:48
1.关于全局变量,你只需知道在所有{}形式的代码块外面定义的变量都属于全局变量,作用域从定义点开始到文件尾2.关于声明,int b,c=20;如果这个语句是在{}代码块外面定义的话,那么b和c就是全局变量,在这里,int b,c=20;你把它拆开来看,相当于int b; int c=20; 2个语句,你可以组合成一个语句,比如 int b,c=20;或者int c=20,b;逗号作为定义的分隔符,如果一次定义很多个同类型的变量,那么要用很多过逗号,隔开,=是赋值符号,右结合的,即从右到左顺序计算,即赋值给c,b和c被逗号隔开了,是2个不同的声明,int 这个类型才是b和c共用的,你明白了吗。
作者:
JiangHG
时间:
2015-3-13 23:37
全局变量在没有赋值以前系统默认为0,而局部变量在没有赋值以前的值是不确定的,nt b, c = 20; 相当于 int b; int c = 20 ; 所以b = 0 ; c =20;
作者:
yafengxn
时间:
2015-3-14 00:09
地板正解
作者:
碧空海
时间:
2015-3-15 09:12
赋值语句再看一下 问题迎刃而解
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2