算术运算

算术运算符包括加法和乘法运算:

变量总和                 i = j + 2;
变量差                   i = j - 3;
改变符号                 x = - x;
变量产品                 z = 3 * x;
除法系数                 i = j / 5;
除法余数                 minutes = time % 60;
添加1 到变量值           i++;
添加 1 到变量值          ++i;
从变量值减 1             k--;
从变量值减 1             --k;

加减运算只用于变量中,不能用于常量里。加减前缀 (++i) 和 (--k)只在变量用在表达式前才用于这个变量。

加减后缀 (i++)和(k--)只在变量用在表达式后才用于这个变量。

重要提示

int i=5;
int k = i++ + ++i;

当移动上面表达式从一个编程环境到另一个(例如,从Borland C++到MQL5)时,计算问题可能会发生。通常,计算顺序取决于编译器的实施。实际情况下,有两种方式实施递减(递增):

  1. 计算整个表达式后递减(递增)应用于变量。
  2. 操作时递减(递增)立即应用于变量。

目前MQL5实施第一种递减(递增)计算方式。但即使知道这个特点,也不建议尝试使用。

示例:

int a=3;
a++;            // 有效表达式
int b=(a++)*3;  // 无效表达式

另见

优先规则