0 && ++a; //短路效应
// 前面不符合后直接PASS掉
//&&如果一个成立那么还有执行后面的表达式 &&是要同时成立才能成立
//如果一个不成立那么后面的成立了也没任何作用了
printf("%d\n",a); } #define height 188 #define money 17300000 #define handsome 96 #define hheight 185 #define hmoney 1730000 #define hhandsome 98 void main3() { hheight > height || hmoney>money || hhandsome>handsome ? printf("有人要嫁给你!\n"): printf("有多远滚多远\n"); //||有一符合表达式就成立 } void main4() { int a=3; int b=4;b || ++a; //短路效应
//有一个成立那么表达式就直接成立后面就PASS掉
// ||如果第一个表达式不成立的话那么还要看最后一个表达式的值是否成立 同时只需要一个条件成立
//如果头一个成立那么就算后面不成立表达式也能成立
printf("%d\n",a); } #define HKH 1 void main5() { HKH ? printf("男人\n"):printf("女人\n"); !HKH ? printf("男人\n"):printf("女人\n"); !!HKH ? printf("男人\n"):printf("女人\n"); !!!HKH ? printf("男人\n"):printf("女人\n"); //!表达式的值取反同样可以多次使用 偶不变奇变 } void main() { printf("%d\n",(6>2+3 && 8 || 0>=!0)); //! 优先级最高 //算数运算符其次 //关系运算紧跟 //&&的大于||运算符 }