黑马程序员技术交流社区
标题:
if作用域紊乱问题
[打印本页]
作者:
huyingbin
时间:
2015-6-5 16:28
标题:
if作用域紊乱问题
在视频中有一段代码是: if(a == 3)
int num = 10;
系统会提示错误,老师的解释是:当a 是3时,会执行 int num ==10;再接着执行程序的话,变量num的内存会被回收,所以系统不允许这样,我感觉这样解释太笼统了。
作者:
曹文博
时间:
2015-6-7 23:44
num应该是局域变量吧, if(a == 3){
int num = 10;} 省略了大括号
作者:
晗修
时间:
2015-6-8 01:10
即使不报错 这句话有什么意义呢
作者:
小龙女的萝卜
时间:
2015-6-8 06:53
省略大括号了
作者:
马贺飞
时间:
2015-6-8 10:16
是a==3成立为真,执行int num=10语句,执行完整个IF语句后里面的变量内存会清空
作者:
sdzwb89
时间:
2015-6-8 10:21
这里不是if的作用域吧 是你这个 num的作用域 如果是是if之前先定义了 num的 应该就可以吧!
作者:
天下1083
时间:
2015-6-8 11:42
代码块 int num = 10;只能在if{ }内使用,如果不是在if的代码块内要重新定义
作者:
cogddo
时间:
2015-6-8 16:05
学知识,要选择性的深入研究,深入纠结。。。这个作用域的问题而已,何必研究那些没意义的东西呢。
作者:
这是829
时间:
2015-6-9 00:01
围观学习啦,加油!!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2