D-P

博客园 首页 新随笔 联系 订阅 管理

逻辑类型和运算

 //可以使用bool、true、false
 #include <stdbool.h>   //使用bool类型需要的头文件
 
 int main ()
 {
     bool b = 6>5;
     bool t = true;
     t = 2;
     printf("%d\n",b);
     return 0l;
 }

逻辑运算低于比较运算符

  • !作“非”运算 只有一个算子,算单目运算符

  • &&作“与”运 就是交集

  • ||作“或”运算 就是并集

优先级:!>&&>||

优先级运算符结合性
1 ()
2 ! + - ++ -- ←(单目的+和-)
3 * / %
4 + -
5 < <= > >=
6 == !=
7 &&
8 ||
9 = += -= *= /= %=

对于条件a == 6 && b += 1来说,如果左边是false,那么不做右边(用在if等句);

如果对于条件a == 6 || b += 1来说,如果左边是true,那么不做右边。这是短路

 


 

条件运算符

优先级高于赋值,但是低于其他所有运算符,且是自右向左。

 count = (count > 20) ? count - 10 : count + 10
     //相当于
 if ( count > 20)
     count = count - 10;
 else
     count = count + 10;

逗号运算 ,

优先级是最低的,且组合关系是自左向右;

连接两个表达式,左边的表达式会先计算,右边的表达式留下来作为结果;

现阶段主要用作for语句中的运算;

 int i;
 i = 3+4,5+6;  
    //i=11
 
 for(i=0,j=10;i<j;i++,j--);

 

 

posted on 2021-03-12 23:53  D-P  阅读(83)  评论(0编辑  收藏  举报