优先级表(指标编程教程附录 A:运算符和结合方向)

提示

这是 2011 年写的一个系列教程。

MQL5 语言运算符的优先级依据 C++ 的优先规则,不同于 MQL4 语言。

优先级 结合方向 运算符
1 从左到右
() 函数调用
[] 数组元素参考
. 引用结构元素
2 从右到左
! 真假运算符(逻辑非)
~ 位逻辑运算符(补码)
改变运算符
++ 增量(自增)
-- 减量(自减)
(type) 类型转换
sizeof(varb) 确定数据占用的空间大小
3 从左到右
* 乘法
/ 除法
% 取模(求余数)
4 从左到右
+ 加法
- 减法
5 从左到右
<< 左移
>> 右移
6 从左到右
< 小于
<= 小于等于
> 大于
>= 大于等于
7 从左到右
== 等于
!= 不等于
8 从左到右 & 位逻辑运算符与(AND)
9 从左到右 ^ 位逻辑运算符或(OR)
10 从左到右 | 位逻辑运算符或(OR)
11 从左到右 && 逻辑与(AND)
12 从左到右 || 逻辑或(OR)
13 从右到左 ?: 假设运算(三目条件运算符
14 从右到左
= 值(赋值)
*= 乘法值
/= 除法值
%= 余数值
+= 加法值
-= 减法值
<<= 左移值
>>= 右移值
&= 位逻辑运算符AND值
^= 位逻辑运算符OR值
|= 位逻辑运算符OR值
15 从左到右 , 逗号(逗号运算符,又名:“顺序求值运算符”)

注:

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

  • 389
回复内容较长可以拖右下角↑
回到
顶部