zoukankan      html  css  js  c++  java
  • C语言运算符的优先级与结合性

    结合性:左结合是从左到右依次执行,右结合是从右到左依次执行。

    特点总结:个人对一些特别的优先级的理解。

    优先级

    运算符

    名称或作用

    运算类型

    结合方向

    特点总结

    1

    ()

    []

    ->

    .

    小括号运算符

    下标运算符

    指向结构成员运算符

    结构成员运算符

     

    左结合

     

    2

    !

    ~

    ++,--

    -

    (类型)

    *,&

    sizeof

    逻辑非运算符

    按位取反运算符

    自增/减运算符

    负号运算符

    类型转换运算符

    指针/取地址运算符

    求类型长度运算符

    单目运算

    右结合

     

    3

    *,/,%

    乘法/除法/求余运算符

    双目运算、算术运算

    左结合

    乘除取余优先于加减

    4

    +,-

    加法/减法运算符

    双目运算、算术运算

    左结合

    5

    <<,>>

    左移/右移运算符

    双目运算、位运算

    左结合

    位移低于算术运算

    于是在二分时可以写 mid = l + r >> 1(虽不建议)

    6

    <,<=,>,>=

    小于/小于等于/大于/大于等于

    双目运算、关系运算

    左结合

    大小比较优先于等于/不等于比较

    7

    ==,!=

    判等/判不等运算符

    双目运算

    左结合

    8

    &

    按位与

    双目运算、位运算

    左结合

     

    9

    ^

    按位异或

    双目运算、位运算

    左结合

     

    10

    |

    按位或

    双目运算、位运算

    左结合

     

    11

    &&

    逻辑与

    双目运算、逻辑运算

    左结合

    “与的优先级高于“或”

    12

    ||

    逻辑或

    双目运算、逻辑运算

    左结合

    13

    ?:

    条件运算符

    三目运算

    右结合

     

    14

    =,+=,-=,*=,/=,%=

    >>=,<<=,&=,^=,|=

    赋值运算符

    双目运算

    右结合

     

    15

    ,

    逗号运算符(顺序求值运算符)

     

    左结合

     

  • 相关阅读:
    分布式事务中间件你知道哪些?
    SpringBoot2.1.9+dubbo2.7.3+Nacos1.1.4构建你的微服务体系
    Nginx用做静态资源服务器和动静分离
    物联网温度服务器-ECharts、HTML5、JavaScript / ECharts gauge使用示例
    物联网温度服务器-ECharts、HTML5、JavaScript / ECharts gauge使用示例
    impala
    impala
    impala
    impala
    代码中的禅机
  • 原文地址:https://www.cnblogs.com/sandychn/p/8395451.html
Copyright © 2011-2022 走看看