摘要:
网上看到一篇文章关于此运算符的运算操作,示例中的数字自己计算后,发现竟然结果错了,所以摘抄过来学习一下。若y的表达式为:i=3;y=(++i)+(++i)+(++i)+(++i); 这时y的值是多少呢?y=7+7+7+7=28?正确答案是y=23,i=7。为什么会出现这样的问题?这里真实的运算规则是:由于加法运算符“+”是二元运算符,所以每次运算都只需要2个操作数,运算后结果保存在一个缓存变量ans中。所以先运算(++i)+(++i),则结果为ans=5+5=10,i=5;然后再运算ans+(++i),则结果为ans=10+6=16,i=6;然后再运算ans+(++i),则结果为ans=... 阅读全文