int a,b,c; a=0,b=0,c=0; if(++a||b++&&c++) printf("%d,%d,%d",a,b,c); else printf("ok");输出结果是

那应该先运行++运算吧?
2024-11-07 17:55:51
推荐回答(2个)
回答1:

1,0,0
因为||与&&同等级
按从右至左运算
0&&0=0
1||0=1
为真。
所以打印1,0,0

回答2:

这种与或非的情况最好全用括号括明,这样就不用怕弄不清楚优先级而出错了