BCR外汇EA编程入门:操作符与表达式详解

简介:

计算操作符包括+、-、*、/。%(求余运算)以及布尔类型运算符(&&代表“与”,||代表“或”)。赋值运算符有=、+=、*=等。

1 表达式,例如:

a++; b = 10;

x = (y * z) /

(w + 2) + 127;

表达式必须以分号结尾。

2 算术运算,例如:

加法运算:i = j + 2;

减法运算:i = j -3;

正负变换运算:i = -i;

乘法运算:i = j * 9;

除法运算:i = j / 8;

求余运算:i = j % 3;

自加1:i++; //相当于i = i + 1;

自减1:i--; //相当于j = j - 1;

3 赋值运算,例如:

将x的值赋给y:y = x;

y += x; 相当于 y = y + x;

y -= x; 相当于 y -= x;

y *= x; 相当于 y = y * x;

y /= x; 相当于 y = y / x;

y %= x; 相当于 y = y % x;

y &= x; 相当于 y = y && x;

y |= x; 相当于 y = y || x;

还有其他的简写方式如:y = x;,y <<= x;

,y ^= x;这些在BCR外汇EA编程中不常用。

4 布尔运算,大家看以下语句:

if(p!=x && py) Print("TRUE"); //解释为:如果p不等于x,并且p的值大于y的值,则打印字符串"TRUE"

5 其他操作符:

数组赋值 arrayABC[3] = 6; //解析为:把数组arrayABC中的第四个元素赋值为6。特别注意:数组里第一个元素的编号起始是0,而不是1。

逗号运算符,该运算符一般用于for语句,总体来说使用频率较低。例如:

for(i=0,j=99; i<100; i++,j--) Print(array[ i][j]);//此循环语句中,i递增后j也递增,所以这里的逗号有点类似于;但实际作用不同。

运算符优先级规则,括号()的运算符级别最高。如果一个表达式包含多个运算符,当不确定运算顺序时,可以直接使用括号来强制指定运算顺序,这对于BCR外汇EA编程初学者尤为实用。