让我很模糊的一个编程

来源:百度知道 编辑:UC知道 时间:2024/06/19 17:13:12
int x=0.i=1 j=1;
i=x++; “++”作为后置操作符.i的值变为0.x的值变为1
j=++x “++”作为前置操作符.x的值变为2.j的值变为2
为什么最后i的值是0.j的值是2呢?各位帮个忙。。。谢谢

int x=0.i=1 j=1;
i=x++; “++”作为后置操作符.i的值变为0.x的值变为1
j=++x “++”作为前置操作符.x的值变为2.j的值变为2
为什么最后i的值是0.j的值是2呢?

i的值变为0,j的值变为2
你都写的很清楚了呀,在它们变了以后再没有改嘛。。。
i=x++,就是先把X赋给i,这时i就为0了,然后X再自加1,x就为1了
j=++x,就是先x自加1,x变为2,再把x赋给j,j就为2了

i=x++; //++后置,先使用再+1;即x先把值赋给i,虽然i的初值为1但被x冲掉,i=0,然后自己加1,x=1
j=++x; //x(=1)先+1,x=2,然后把值(x=2)传给j
看不懂没关系,我一开始也搞不明白,暂时过,时间久了就OK了.