这样合法吗?
- C/C++ code
#include <stdio.h>int main(void){ int x = 20; printf("%d ", 0<x<20); printf("%d\n", 0 < x && x < 20); return 0;}0 < x < 20 合符规范吗 ? 怎么不报错 结果是 1 0 ?
[解决办法]
0<x为真(1)
然后1<20为真(1)
[解决办法]
0<x是1
所以1<20是1
0 < x && x < 20是0
所以连载一起就是10
[解决办法]
可以这么写,只不过意思就不一样了
变成 先判断0《x, 然后利用这个表达式的值,
1 or 0 和《20进行判断
所以答案是1
[解决办法]