A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© LiuWei2015   /  2015-4-23 23:24  /  1803 人查看  /  22 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

突然世界晴 发表于 2015-4-24 09:42
i=i++,不是说了 也自增了吗。 但是自增后 你又把i重新赋值为老值,新值没有任何作用,。
而直接i++;自增 ...

大神我明白了,你看是这样不,在内存中开辟了两个空间,1、i(旧值)  2、i++(新值),按照运算符优先级,先算i++,然后执行赋值运算符=,把旧值赋值给自己,然后新值被释放了对吗??
回复 使用道具 举报
x=x++;首先实现的是x=x的运算,结果是x依然是一,然后实现x自增一。但是由于x++的自增并没有赋给任何变量,所以无效。
回复 使用道具 举报
++或--的运算原则:
++或-- 在变量的右侧:它的运算原则是先把变量空间中的值在内存中临时开辟个空间保存,然后给当前参与运算的这个变量空间中+1或-1,接着使用临时空间中的数据和其他运算符运算。

++或--在变量的左侧:在运算的时候,会先给变量空间中+1或-1,然后使用改变后的这个变量空间中的数据参与其他运算。
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 加入黑马