我们知道任何不等于0
的数字在C中都被视为true
,因此我们可以这样写:
int a = 16;
while (a--)
printf("%d\n", a); // prints numbers from 15 to 0
然而,我想知道C中的true/false是否定义为1
/0
,所以我try 了下面的代码:
printf("True = %d, False = %d\n", (0 == 0), (0 != 0)); // prints: True = 1, False = 0
C标准是否明确指出真值和假值分别为1
和0
?