你知道n--的意思么。n--表示先使用n的值,然后n=n-1。就是说
先使用n==0时的值,用0和0 比。然后n再自减1
与之相反的是--n,你可以试试
num=0;
if(--num ==0)
printf("OK");
else
printf("NOT OK");
看看这又是什么结果
分析这个问题的重点方向错了,应该是自加或者自减前者和后置的问题,num--在表达式中是先拿num值与其他值进行运算,然后num才自减,此题如果改为--num == 0 结构可能不一样。
该程序等价与
num=0;
if(num==0)
{
num=num-1;
printf("ok");
}
else
printf("Not ok");
num--的值为num,运行后在自减1
所以应该是OK