++i 的疑点
++i 的疑问!C/C++ codeint i5printf(%d,,(++i)+(++i)+(++i)) //结果22/*但是理论上应该是 6 + 7 + 8
++i 的疑问!
C/C++ codeint i=5;printf("%d,",(++i)+(++i)+(++i)); //结果22/*但是理论上应该是 6 + 7 + 8 = 21为什么会得到22呢!百思不得其解!求解答~*/
[解决办法]c++没有规定表达式的求值顺序一定是从从右到左或者是从左到右。
结果为22是你认定求值顺序一定是从从右到左。
[解决办法]用什么环境运行的,我用vs2005 答案为24
[解决办法]看反汇编代吗.
PS, 强烈不建议在printf函数中执行运算
[解决办法]看顶置的帖子. 每天都有人问这种问题.