亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> C语言

了解 C 运算符优先级和结合性:清晰指南

运算符的优先级

如果表达式中存在多个运算符,则运算符的优先级决定首先执行哪个运算符。

让我们考虑一个例子:

<前>00

在 C 语言中,08 的优先级 高于1022 。因此,39 首先被评估。然后涉及 49 的表达式 被评估为 56 的优先级 高于 64 .

这是一个从高到低的运算符优先级表。 关联性的性质 将很快讨论。

运算符优先级和结合性表

操作员 运算符的含义 关联性 ()
[]
->
.函数调用
数组元素引用
间接成员选择
直接会员选择从左到右!

+
-
++
--
&
*
大小
(类型)逻辑否定
按位(1)求补
一元加
一元减号
增量
递减
取消引用(地址)
指针参考
返回对象的大小
类型转换(转换)从右到左*
/
%乘法
划分
余数从左到右+
- 二进制加法(加法)
二进制减法(减法)从左到右<<
>>左移
右移从左到右<
<=
>
>=小于
小于或等于
大于
大于或等于从左到右==
!=等于
不等于从左到右&按位AND从左到右^按位异或从左到右|按位OR从左到右&&逻辑AND从左到右||逻辑OR从左到右?:条件运算符从右到左=
*=
/=
%=
+=
-=
&=
^=
|=
<<=
>>=简单赋值
分配产品
分配商
分配余数
分配总和
分配差异
分配按位与
分配按位异或
分配按位或
分配左移
分配右移从右到左,表达式分隔符从左到右

运算符的结合性

运算符的结合性决定了表达式计算的方向。例如,

<前>19

这里,a 的值被分配给 b,而不是相反。这是因为 79 的结合性 运算符是从右到左。

另外,如果存在两个具有相同优先级(优先级)的运算符,则结合性决定它们执行的方向。

让我们考虑一个例子:

<前>27

在这里,运算符 8396 具有相同的优先级。并且,它们的关联性是从左到右。因此,108 首先执行。

上面的表达式相当于:

<前>31

注意: 如果语句有多个运算符,可以使用括号115 使代码更具可读性。

目录


C语言

  1. C++ 概述
  2. C# - 正则表达式
  3. C 输入输出 (I/O)
  4. C++ 数组
  5. 带有示例的 C# 哈希表
  6. C++ 中的运算符
  7. C 数据类型
  8. C# 中的文件处理:I/O 操作 [示例]
  9. C++ STL 中的堆栈示例
  10. 将数组传递给 C 中的函数
  11. C# - 类
  12. C# - 常量和文字