C++运算问题

来源:百度知道 编辑:UC知道 时间:2024/07/04 12:05:23
int a=5
那么(++a)+(++a)+(++a)为什么等于22???
谁能够给我讲一下呢
谢谢
十分感谢

#include<iostream>
using namespace std;

int main()
{
int a=5;
int b,c,d;
cout << (b=++a)+(c=++a)+(d=++a) << endl;
cout << b << endl;
cout << c << endl;
cout << d << endl;
a=5;
cout << (++a)+(++a)+(++a) << endl;
return 0;
}
或许能给你点提示

第一个A++为6,第二个为7,第三个为8,我就不明白怎么是22了?

8+8+6=22

嗯 是这样的
首先 a++
a=6
然后
a++
a=7
然后
a+a=14
然后
a++=8
再然后
14+a=22
其实就是所有a++的结果都在a第一次加的是a+a,计算机不会分辨前面的a和后面的a 呵呵呵