关于x++的问题,帮忙解决!!

来源:百度知道 编辑:UC知道 时间:2024/05/23 02:07:37
int main(){
int x=5;
cout << x << "," << x++ << "," << (x>>2) <<endl;
return 0;
}
结果为什么是6,5,1 。 哪位大虾帮忙解释一下..谢谢!!

由右至左运算:
先计算 x>>2 : 5的二进制是101右移2位后变成1,所以就是1了;但x值并未变还是5;
再计算 x++ : 后自增运算,先使用这个值再加1,所以这里是5,但x值已经变成6了;
最后是 x : 由上面一步可知x现在等于6 了

所以结果是:6,5,1