我是C语言初学者,有道题想请教:
设有说明int x=0,y=0;
则执行if(x++) y=1+x;
else y=2+x;
后,变量y的值是多少?
我自己做了编程:
main()
{ int x=0,y=2;
if(x++) y=1+x;
else y=2+x;
printf(y=%d\n”,y);
}
运行结果是y=3
不知道编程中有没有错误,如果是正确的,但我还是不知道答案是怎么来的。特别是if(x++) ,那x=x+1,x的值应该是1,而表达式x++的值应该是0,那样的话if(0) y=1+x;else y=2+x;到最后怎么结果是3的,真的想不通。
有没有C语言高手可以给我具体的分析一下,我会非常感谢的。