C语言运算符优先级和口诀

一共有十五个优先级: 同一优先级的运算符,运算次序由结合方向所决定

1   ()  []  .  ->        (括号,成员排第一)

2   !  ~   -(负号) ++  --   &(取变量地址)*   (type)(强制类型)    sizeof       (单目运算排第二)

3   * / %         (乘除余三)

4   + -             (加减四)

5   >> <<          (移位五)

6   > >= < <=     (关系六)

7   == !=           (等于不等排第七)

8   &             (位“与”)

9   ^               (”异或“)

10  |               (和位"或")三分天下八九十

11  &&            (逻辑 ”与“)

12  ||                (和”或“)十一和十二

13  ?:                (条件运算符)

14   =  +=  -=  *=  /=   %=  |=   ^=   &=   >>=   <<=    (条件高于赋值)

15  ,             (逗号优先级最低)

结合性:2   13  14  是从右至左   其他都是  从左至右有问题可以在交流的

括号成员第一;        //括号运算符[]() 成员运算符.  ->

全体单目第二;        //所有的单目运算符比如++、 --、 +(正)、 -(负) 、指针运算*、&

乘除余三,加减四;   //这个"余"是指取余运算即%

移位五,关系六;    //移位运算符:<< >> ,关系:> < >= <= 等

等于(与)不等排第七;    //即== 和!=

位与异或和位或;    //这几个都是位运算: 位与(&)异或(^)位或(|)

"三分天下"八九十;

逻辑或跟与;            //逻辑运算符:|| 和 &&

十二和十一;            //注意顺序:优先级(||)  底于 优先级(&&)

条件高于赋值,        //三目运算符优先级排到13 位只比赋值运算符和","高

逗号运算级最低!    //逗号运算符优先级最低

优先级

运算符

名称或含义

使用形式

结合方向

说明

1

[]

数组下标

数组名[常量表达式]

左到右

()

圆括号

(表达式)/函数名(形参表)

.

成员选择(对象)

对象.成员名

->

成员选择(指针)

对象指针->成员名

2

-

负号运算符

-表达式

右到左

单目运算符

(类型)

强制类型转换

(数据类型)表达式

++

自增运算符

++变量名/变量名++

单目运算符

--

自减运算符

--变量名/变量名--

单目运算符

*

取值运算符

*指针变量

单目运算符

&

取地址运算符

&变量名

单目运算符

!

逻辑非运算符

!表达式

单目运算符

~

按位取反运算符

~表达式

单目运算符

sizeof

长度运算符

sizeof(表达式)

3

/

表达式/表达式

左到右

双目运算符

*

表达式*表达式

双目运算符

%

余数(取模)

整型表达式/整型表达式

双目运算符

4

+

表达式+表达式

左到右

双目运算符

-

表达式-表达式

双目运算符

5

<<

左移

变量<<表达式

左到右

双目运算符

>>

右移

变量>>表达式

双目运算符

6

>

大于

表达式>表达式

左到右

双目运算符

>=

大于等于

表达式>=表达式

双目运算符

<

小于

表达式<表达式

双目运算符

<=

小于等于

表达式<=表达式

双目运算符

7

==

等于

表达式==表达式

左到右

双目运算符

!=

不等于

表达式!= 表达式

双目运算符

8

&

按位与

表达式&表达式

左到右

双目运算符

9

^

按位异或

表达式^表达式

左到右

双目运算符

10

|

按位或

表达式|表达式

左到右

双目运算符

11

&&

逻辑与

表达式&&表达式

左到右

双目运算符

12

||

逻辑或

表达式||表达式

左到右

双目运算符

13

?:

条件运算符

表达式1? 表达式2: 表达式3

右到左

三目运算符

14

=

赋值运算符

变量=表达式

右到左

/=

除后赋值

变量/=表达式

*=

乘后赋值

变量*=表达式

%=

取模后赋值

变量%=表达式

+=

加后赋值

变量+=表达式

-=

减后赋值

变量-=表达式

<<=

左移后赋值

变量<<=表达式

>>=

右移后赋值

变量>>=表达式

&=

按位与后赋值

变量&=表达式

^=

按位异或后赋值

变量^=表达式

|=

按位或后赋值

变量|=表达式

15

,

逗号运算符

表达式,表达式,…

左到右

从左向右顺序运算

说明:

同一优先级的运算符,运算次序由结合方向所决定。

主义逻辑运算符&& || “懒惰求值”

简单记就是:! > 算术运算符 > 关系运算符 > && > || > 赋值运算符

http://www.cnblogs.com/PegasusWang/articles/2874975.html

转载于:https://www.cnblogs.com/simonLiang/p/5870985.html

运算符优先级记忆口诀及列表(转)相关推荐

  1. java运算优先级顺口溜_java运算符优先级记忆口诀

    尊重原创:(口诀)转自http://lasombra.iteye.com/blog/991662 今天看到<java编程思想>中的运算符优先级助记口诀,不过"Ulcer Addi ...

  2. 运算符优先级记忆口诀

    单算移关与,异或逻条赋 单:单目运算符,比如逻辑非(!),按位取反(~) 算:算数运算符,加减乘除 移:移位运算符,左移(<<),右移(>>) 关:关系运算符,大于(>) ...

  3. C运算符优先级完整口诀

    C运算符优先级完整口诀 C语言常用运算符的优先级口诀是:"单算关逻条赋逗": 如果加入位运算符,完整口诀是:"单算移关与,异或逻条赋". ■"单&qu ...

  4. C语言运算符优先级和口诀

    1   ()  []  .  -> 2   !  ~   -(负号) ++  --   &(取变量地址)*   (type)(强制类型)    sizeof  3   * / % 4   ...

  5. C语言运算符优先级和口诀(转)

    一共有十五个优先级: 1   ()  []  .  -> 2   !  ~   -(负号) ++  --   &(取变量地址)*   (type)(强制类型)    sizeof 3   ...

  6. 【C/C++】运算符优先级记忆

    运算符优先级顺口溜:淡云一笔,鞍落三服. 淡:单目运算符: 云:算术运算符: 一:移位运算符: 笔:比较运算符: 鞍:按位运算符: 落:逻辑运算符: 三:三目运算符: 服:赋值运算符. 单目运算符 & ...

  7. linux C语言 任务优先级,C语言运算符优先级和口诀

    一共有十五个优先级: 1   ()  []  .  -> 2   !  ~   -(负号) ++  --   &(取变量地址)*   (type)(强制类型)    sizeof 3   ...

  8. c语言的运算符优先级文档下载,C语言运算符优先级汇总口诀表

    圆下箭头一顿号 非凡增减富强针地长 三乘除,四加减,五移位 千万别把鱼忘记,它在盛饭的厨子里 小灯大灯灯灯不等 爸喂鱼,舅疑惑,裸鸡也疑惑 十三姨,十四父,十五逗,兜到低 "圆下箭头一顿号& ...

  9. C语言运算符优先级以及记忆方式

    C语言运算符优先级 C语言中运算符的优先级从高到低如下: 一元运算符:! ++ – +(正数)-(负数)& (取地址)*(指针值) 乘除模运算符:* / % 加减运算符:+ - 移位运算符:& ...

最新文章

  1. python set 排序_python set 排序_如何在Python中使用sorted()和sort()
  2. JspServlet
  3. 【Linux】17.Ubuntu16.04 系统添加网关和DNS的两种方式
  4. 从零单排学Redis【黄金】
  5. 预告丨大型出海知识盛宴,邀您一起 enjoy !
  6. Codeforce1311B. WeirdSort (冒泡排序)
  7. C++之typename
  8. HBase数据备份及恢复(导入导出)的常用方法
  9. 第六次会议(4.15)
  10. Python多种方法实现句子中单词倒置(好未来2017笔试题)
  11. while循环python的范围_为什么Python中的range()循环比使用while循环更快?
  12. 产品经理的书籍笔记(一)--------《神一样的产品经理》
  13. SQL删除重复数据只保留一条
  14. 生产质量分析报告常用模板汇总,质量人必备!
  15. rs485全双工中只接一组_RS485通讯的正确接线方式
  16. 质数/素数 - 合数
  17. SoundHound:根据哼唱的旋律找到你想要的歌曲
  18. 2021-CISCN-fianl-ezj4va
  19. R5 4650G和R5 5600G差距
  20. 从零开始的树莓派生活(树莓派4B的组装与系统安装)

热门文章

  1. 2022-2028年中国麻纺织业投资分析及前景预测报告
  2. LeetCode简单题之1比特与2比特字符
  3. hexo框架个人博客的搭建(面试加分!)
  4. NVIDIA深度架构
  5. 旷视MegEngine基本概念
  6. Yolo:实时目标检测实战(下)
  7. MySQL数据库+命令大全+常用操作
  8. 第一次接觸sbt會遇到的
  9. HDU - 2181-哈密顿绕行世界问题
  10. 关于cookie与本地 存储的区别的问题。