C++冲刺(三)运算符优先级

13 篇文章 0 订阅


      优先级最高的是数组下标、函数调用、操作符各结构成员操作符。(如 ()[] -> .)
      单目运算符的优先级仅次于前述运算符。类型转换也是单目运算(如!~ ++ -- - (type) *  & sizeof)。单目运算符是自右至左,如*p++解释为*(p++)
      双目运算符中算术运算符的优先级最高,移位运算符次之,关系运算符再次之,接着是逻辑运算符、条件运算符,赋值运算符,最后是逗号运算符。
     最重要的两点是:1 任何一个逻辑运算符的优先级低于任何一个关系运算符     2 移位运算符的优先级比算术运算符要低,但比关系运算符要高。
     同一优先级中:乘除求余法优先级相同,加法和减法相同,两个移动运算符相同。但是6个关系运算符不同,运算符==和!=要低于其他关系运算符。逻辑运算符有不同优先级:所有按位运算符要比顺序运算符的优先级高,每个“与”比“或”优先级高,而按位异或运算符介于按位与运算符和按位或运算符之间。
     赋值运算符的优先级要低于条件运算符。所有的赋值运算结合方式是从右到左的。
     在所有的运算符中,逗号运算符的优先级最低。因为逗号运算符常用于在需要一个表达式而不是一条语句的情形下替换作为语句结束标志的分号。逗号运算符在宏定义中特别有用。

更细微的区分可见下图:


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值