为什么这个c++程序的结果x是9,怎么算的?

来源:百度知道 编辑:UC知道 时间:2024/06/18 23:10:10
#include"iostream.h"
#include"stdio.h"
void main(){
int x,y,z;
x=y=z=7;
y=x++-1;
y=++x-1;
y=z--+1;
cout<<x<<","<<y<<endl;
getchar();
}

x=y=z=7;这句后x=7;
y=x++-1;这句,x自加1则x此时为8
y=++x-1;这句,x又加1,则x变为9哈

=号是赋值运算符。首先将7赋值给z,在将z赋值给y,y赋值给x,++运算符自右向左结合同时比+,-优先级高,+,-比=优先级高,就拿y=x++-1为例,先将x-1赋值给y,y值为6,再将x自加值为8,第七行:先将x自加后赋值给y,x又减1,第八行同理。