注册 登录
编程论坛 C++ Builder

自加 自减 运算符的问题

yim 发布于 2013-07-28 01:52, 1655 次点击
#include <iostream>
using namespace std;
int main()
{
    int i,j,m,n;
    i=8;
    j=10;
    m=++i+j++;
    n=(++i)+(++j)+m;
    cout<<i<<'\t'<<j<<'\t'<<m<<'\t'<<n<<endl;
    return 0;
}
这个是谭哥书上的课后习题。我编译后输出的结果是 10 12 19 41 。求指导,为什么m=19,n=41?能不能给个分析的详细思路?
5 回复
#2
wp2319572013-08-01 10:05
老掉牙的题目了  还0分贴
#3
cs648812792013-08-23 16:12
额,我也是新手哈!下面是我的理解:
m=19,是这么看的,m=++i+j++,先是i++,然后i不就等于9了么?在于j相加,就是19.在j++,j不就是11了么?n=(++i)+(++j)+m;这样不就刚刚好41么?这个关键就是++j,和j++之间的问题,++在前面,先自加,++在后面,则先与其他的运算符运算拉!
#4
hjxlj2013-08-26 11:26
0分帖我就不准备答复你了,怎么的也得来个十分八分的吧?
#5
鸥翔鱼游2014-04-24 15:02
且学且珍惜,得认学习真正消化
1