0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

C运算符的优先级和结合性详细解决

Wildesbeast 来源:今日头条 作者:算法集市 2020-02-22 17:27 次阅读

运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。

C语言内置了丰富的运算符,大体可分为10类:算术运算符、关系运算符、逻辑运算符、位操作运算符、赋值运算符、条件运算符、逗号运算符、指针运算符、求字节数运算符和特殊运算符。

根据运算符可操作的操作数的个数,可把运算符分为一元运算符、二元运算符和多元运算符(一般三元)。

1、算数运算符

用于数值计算,包括:加(+)、减(-)、乘(*)、除(/)、求余(%)、自增(++)、自减(--)。

2、关系运算符

用于比较运算,包括:大于(>)、小于(<)、等于(==)、大于等于(>=)、小于等于(<=)、不等于(!=)。

3、逻辑运算符

用于逻辑运算,包括:与(&&)、或(||)、非(!)。

4、位操作运算符

按二进制位进行运算,包括:位与(&)、位或(|)、位非(~)、 位异或(^)、左移(<<)、右移(>>)。

5、赋值运算符

用于赋值运算,包括:简单赋值(=)、复合算术赋值(+=、-=、*= 、/=、%=)以及复合位运算赋值(&=、|=、^=、>>=、<<=)等。

6、条件运算符

用于条件求值,三目运算符:(x > y) ? x : y。C语言中有且只有这一个三目运算符。

7、逗号运算符

用于把若干表达式组合成一个表达式:表达式1 , 表达式2。

8、指针运算符

用于取内容(*)和取地址(&)两种运算。

9、求字节数运算符

用于计算数据类型所占的字节数(sizeof)。

10、特殊运算符

包括括号()、数组下标[]、成员(-> 和 .)等。

比如式子“x = 1 + 2 * 3 / 4”,需要先计算乘再计算除,然后是加,最后是赋值。这里介绍下关于运算符在参与运算过程中的两个概念:

优先级:当不同运算符优先级不同时,先计算谁后计算谁

结合性:当不同运算符优先级相同时,先计算谁后计算谁

运算符的优先级和结合性

作为初学者,当一个表达式中有多个运算符时,如果不知道哪个优先级高哪个优先级低就可以查一下优先级表,等用的时间长了自然而然就记住了。而且,事实上在编程的时候也不需要考虑优先级的问题。因为如果不知道优先级高低的话,加一个括号就可以了,因为括号( )的优先级是最高的。

另外,大多数运算符的结合性都是从左往右。从右向左的一个是单目运算符,另一个是三目运算符,还有一个就是双目运算符中的赋值运算符=。运算符的“结合性”也不用死记,在不断使用中就记住了。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • C语言
    +关注

    关注

    180

    文章

    7604

    浏览量

    136784
  • 编译器
    +关注

    关注

    1

    文章

    1634

    浏览量

    49128
  • 数组
    +关注

    关注

    1

    文章

    417

    浏览量

    25943
收藏 人收藏

    评论

    相关推荐

    C语言运算符的使用方法

    详细介绍了C语言表达式、算术运算符、赋值运算符、关系运算符、条件结构、逻辑运算符、位
    发表于 11-02 11:30 1617次阅读
    <b class='flag-5'>C</b>语言<b class='flag-5'>运算符</b>的使用方法

    JAVA语言的运算符优先级

    表达式(1)中,运算符“*”比“+”的优先级高,所以先求b*c的值之后再与a的值相加。表达成(2)中,逻辑运算符“||”比赋值运算符
    发表于 12-06 00:29

    单片机C语言运算符优先级结合

    运算符优先级结合 优先级操作功能结合
    发表于 11-07 10:47

    运算符优先级

    运算符优先级
    发表于 08-20 12:49

    C语言运算符优先级结合

    ,很明显先进行乘法运算,计算3*5,结果为15,再进行加法运算,计算12+15,结果为27。也就是说,乘法的优先级比加法高,要先计算,这与数学中的规则是一样的。 所谓优先级,就是当
    发表于 07-06 06:46

    C语言运算符优先级(超详细

    C语言运算符优先级(超详细) 当想找哪个运算符优先级高时,很多时候总是想找的就没有,真让人气愤
    发表于 04-27 16:47

    C语言入门教程-运算符优先级

    运算符优先级C语言有丰富的运算符。如果不清楚这些运算符优先级,则在同时使用多个
    发表于 07-29 14:21 1308次阅读

    01_常用运算符优先级

    c语言,常用运算符优先级c语言学习过程中必要掌握的学科知识。
    发表于 04-28 16:59 0次下载

    C语言运算符优先级

    电子发烧友网站提供《C语言运算符优先级.pdf》资料免费下载
    发表于 05-27 08:00 3次下载

    条件运算符的用法_C运算符结合方向

    条件运算符优先级高于赋值、逗号运算符,低于其他运算符。在标准C语言的文档里,对操作
    发表于 02-24 16:36 9701次阅读

    详细C语言运算符优先级

    每当想找哪个运算符优先级高时,很多时候总是想找的就没有,真让人气愤!现在,终于有个我个人觉得非常全的,分享给
    的头像 发表于 03-20 17:00 9327次阅读

    c语言运算符优先级规律

    详细!快进来复习一下C语言运算符优先级 每当想找哪个运算符优先级高时,很多时候总是想找的就没有
    的头像 发表于 04-03 11:30 7548次阅读
    <b class='flag-5'>c</b>语言<b class='flag-5'>运算符</b><b class='flag-5'>优先级</b>规律

    C语言的运算符

    C语言中,我们常常会用到表达式,在使用表达式的过程中便会使用到运算符C语言中,不同的运算符拥有不同的优先级
    的头像 发表于 02-21 15:12 1194次阅读
    <b class='flag-5'>C</b>语言的<b class='flag-5'>运算符</b>

    python运算符优先级顺序口诀

    详细介绍Python运算符优先级顺序以及如何正确使用它们。 首先,让我们从最高优先级运算符开始,逐步向下解释。在Python中,最高
    的头像 发表于 11-22 14:34 2593次阅读

    python中运算符优先级大小

    Python中运算符优先级决定了表达式中各个运算符的计算顺序。了解运算符优先级对于正确理解和编写复杂的表达式非常重要。本文将
    的头像 发表于 11-29 16:21 3412次阅读