黑马程序员技术交流社区
标题:
大神们谁能给我解答一下这个问题,我是菜鸟。求助攻、
[打印本页]
作者:
WHY-y
时间:
2015-6-30 09:17
标题:
大神们谁能给我解答一下这个问题,我是菜鸟。求助攻、
昨天看毕老师的基础视频教程,讲到“+=”这块我不太懂。S=S+5运行错误,因为S为2个字节,5为4个字节,相加后4个字节不能再赋给2个字节的S。但是S+=5运行正确,老师说的是只做一次转换,值会自动提升为4个字节。
我想问的是为什么后者自动转换而前者不可以?
作者:
jake_liu
时间:
2015-6-30 15:31
这个只需要记住就行,+=性质决定的。
作者:
ZhangHeng
时间:
2015-6-30 16:54
s=s+5;这是两次运算,先做加法运算,再把值赋给s。
s+=5;一次运算,就是直接赋值,“+=”运算符在给s赋值时,就已经自动完成了强制转换的操作。
作者:
dadai5ai
时间:
2015-6-30 17:04
ZhangHeng 发表于 2015-6-30 16:54
s=s+5;这是两次运算,先做加法运算,再把值赋给s。
s+=5;一次运算,就是直接赋值,“+=”运算符在给s赋值 ...
楼上正解
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2