#include <stdio.h>
/* 逻辑运算符
- 或。|| 格式: 表达式1 || 表达式2 规则: 有一个为真,结果就是真;全假就是假 2.与.&& 格式: 表达式1 && 表达式2 3.非。! */
int main(){ printf("%d\n",1 > 0); // 1 printf("%d\n",1 < 0); // 0 printf("%d\n",1 < 0 || 1 > 0); // 1
// 真: 非零即真
// 假: 0, '\0'
printf("%d\n", 1 || 2 ); // 1
printf("%d\n", 1 || 1 > 3 ); // 1
printf("%d\n", 0 || 1 > 3 ); // 0
printf("%d\n", 1.2 || 5.6 ); // 1
printf("%d\n", 1 < 0 && 1 > 0); // 0
printf("%d\n", 3 > 2 && 1 > 0); // 1
printf("%d\n", 3 < 2 && 1 > 3); // 0
// 短路
// &&:如果左边为假, 则右边不求值 int i = 0; 2 > 3 && (i = 1); // 0
// ||: 如果左边为真, 则右边不求值 int k = 0; 3 > 2 || (k = 1); printf("%d\n", k); // 0 } // !取反 printf("%d\n", !(1> 0) ); // 0 printf("%d\n", !0 ); // 1 printf("%d\n", !2 ); // 0 printf("%d\n", !!2 ); // 1 printf("%d\n", !0.01 ); // 0
运行结果如下: