读书人

一个很有趣的有关问题自认为的可以看

发布时间: 2013-03-27 11:22:41 作者: rapoo

一个很有趣的问题,自认为大虾的可以看看

#include <vector>#include <iostream>using namespace std;void main(){int i = 2, j;j = i++ + ++i;cout << j <<endl;  //等于6i = 2;i = i++ + ++i;//换((i++) + (++i));此种形式,依然等于7cout << i <<endl;  //等于7,为什么等于7呢?}

自认为大虾的朋友们,能给小弟解惑一二吗?

根据cyz108D这位哥们的评论,我总结了原因如下:

问题是由于i++引起的,i = i++ + ++i会先执行i = 右边的表达式,最后再i++操作,所以结果就出现了一个6,一个7。

读书人网 >编程

热点推荐