伙伴云客服论坛»论坛 S区 S软件开发 查看内容

0 评论

0 收藏

分享

C语言中的运算符优先级和结合性一览表

目录

    运算符优先级和结合性一览表上表中可以总结出如下规律总结

所谓优先级就是当一个表达式中有多个运算符时,先计算谁,后计算谁。
运算符的优先级从高到低大致是:单目运算符、算术运算符、关系运算符、逻辑运算符、条件运算符、赋值运算符()和逗号运算符
简单记就是:
! > 算术运算符 > 关系运算符 > && > || > 赋值运算符。
此外运算符还有“目”和“结合性”的概念,这个很简单。“目”就是“眼睛”的意思,一个运算符需要几个数就叫“几目”。比如加法运算符+,要使用这个运算符需要两个数,如 3+2。对+而言,3 和 2 就像它的两只眼睛,所以这个运算符是双目的。
C语言中大多数的运算符都是双目的,也有单目和三目的。
单目运算符比如逻辑非,如!1,它就只要一只眼睛,所以是单目的。
整个C语言中只要一个三目运算符,即条件运算符? :。
那么“结合性”是什么呢?
上面讲的优先级都是关于优先级不同的运算符参与运算时先计算谁后计算谁。
但是假设运算符的优先级相同,那么先计算谁后计算谁呢?
这个就是由“结合性”决定的。

运算符优先级和结合性一览表

C语言中的运算符优先级和结合性一览表-1.png


上表中可以总结出如下规律

1、结合方向只要优先级2、13、14三个是从右往左,其余都是从左往右。
2、所有双目运算符中只要赋值运算符的结合方向是从右往左。
3、另外两个从右往左结合的运算符也很好记,因为它们很特殊:一个是所有单目运算符,一个是三目运算符。
4、C语言中有且只要一个三目运算符。
5、逗号运算符的优先级最低,要记住。
6、此外要记住,对于优先级:算术运算符 > 关系运算符 > 逻辑运算符 > 赋值运算符。逻辑运算符中“逻辑非 !”除外。

总结

以上为个人经历,希望能给大家一个参考,也希望大家多多支持网站。

回复

举报 使用道具

全部回复
暂无回帖,快来参与回复吧
本版积分规则 高级模式
B Color Image Link Quote Code Smilies

宁立
注册会员
主题 24
回复 14
粉丝 0
|网站地图
快速回复 返回顶部 返回列表