运算符优先级|学习笔记

简介: 本节课介绍运算符优先级问题。

开发者学堂课程【GO 语言核心编程-基础语法、数组、切片、Map:运算符优先级】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/625/detail/9549


运算符优先级

 

目录

一、 运算符优先级

二、 运算符优先级的分类整理

 

本节课介绍运算符优先级问题。

 

一、运算符优先级

当表达式中存在多数运算符时,则谁先执行,后执行的问题既存在。

1. 运算符有不同的优先级,所谓优先级就是表达式运算中的运算顺序。如行运算符总优先于下一行。从上到下,优先级逐渐降低。

2. 只有单目运算符、赋值运算符是从右向左运算的。其他为从左到右。

赋值运算符:假设 a=n1+n2,则从右到左进行

单目运算针对一个数,一个量进行

例如:+,-,对其进行求正数,求负数;或者进行数据类型的转换,或者取地址符,或者取指针的变量,运算也是从右到左进行。

3. 大致的顺序整理

运算符优先级一览表:

分类

描述

关联性

后缀

()【】->++--

左到右

单目

+-!~(type)*&sizeof

右到左

乘法

*/%

左到右

加法

+-

左到右

移位

<<>>

左到右

关系

<<=>>=

左到右

相等(关系)

==!=

左到右

按位AND

&

左到右

按位XOR

^

左到右

按位OR

|

左到右

逻辑AND

&&

左到右

逻辑AND

||  |

左到右

赋值运算符

=+=-

=*=/=%=>>=<<=&=

^=|=

右到左

逗号

,

左到右

表格中由上到下,由高到低

 

二、运算符优先级的分类整理

1. 括号,++,--

后缀

()【】->++--

2. 单目运算

对一个值进行运算,例取地址;对一个指针的变量取值。

单目

+-!~(type)*&sizeof

3. 算术运算符

乘法

*/%

加法

+-

4. 移位运算

移位

<<>>

5. 关系算符

关系

<<=>>=

相等(关系)

==!=

6. 位运算符

按位AND

&

按位XOR

^

按位OR

|

7. 逻辑运算符

逻辑AND

&&

逻辑OR

||  |

8. 赋值运算符

赋值运算符

=+=-=*=/=%=>>=<<=&=^=|=

9. 逗号

逗号

若想更好记忆,可按照习惯编为一个口诀。

括;单;算;移;关系;位移;逻辑;赋值;逗号。

本节课运算符优先级就讲解到这里。

相关文章
|
3月前
C中的运算符优先级
C中的运算符优先级。
11 0
|
5月前
|
C语言 C++
【c语言】&& 逻辑运算符运算规则
【c语言】&& 逻辑运算符运算规则
108 0
|
8月前
|
C语言
C语言:运算符优先级
总体原则:算术运算符 > 关系运算符 > 逻辑运算符 > 赋值运算符 同一级别下的运算符的运算次序由表达式的结合方向决定
132 0
|
11月前
|
SQL
c语言复习之运算符和表达式(四)
c语言复习之运算符和表达式(四)
|
Java Scala 开发者
运算符优先级|学习笔记
快速学习运算符优先级。
77 0
运算符优先级|学习笔记
|
Java Scala 开发者
算数运算符|学习笔记
快速学习算数运算符。
166 0
|
PHP 开发者
运算符介绍| 学习笔记
快速学习运算符介绍。
72 0
|
开发者 Python
四则运算|学习笔记
快速学习四则运算
50 0
|
Go 开发者
算数运算符课堂练习|学习笔记
快速学习算数运算符课堂练习。
87 0