EA编程教程第五讲:操作符详解
1. 复合语句
一个复合操作(或称代码块)由一个或多个语句构成,它们被一对大括号({})包裹起来。需要注意的是,右大括号后面不需要添加分号(;)。例如:
if(x==0)
{
Print("invalid position x=",x);
return;
}
2. 表达式
一个表达式以分号(;)结束,分号本身也是一个操作符,代表一个语句的终结。例如:
i = 4;
i = a = 7; // 错误写法,一个表达式中不能同时出现两个或以上的赋值等号(=)。
函数调用语句,如 FunctionName("a"); // 调用了一个名为FunctionName的函数,并传入字符串参数"a"。
3. break 语句
break语句用于使程序跳出最近的一层循环(while、for)或switch语句。当循环内的任务已经完成时,可以使用break提前终止循环。例如:
for(a=0;a
if((array[a]==0)
break;
这段代码的作用是遍历数组array,一旦发现某个元素的值为0,就立即跳出循环。
4. continue 语句
continue用于跳过当前循环体中剩余的语句,直接进入下一次循环迭代,它可以用在for和while循环中。例如:
int a = 0;
for(int j = 0; j < 10; j++)
{
if (array[j] <= 0)
{
continue; // 遇到continue,程序将跳过后续的 a += array[j] 语句,直接开始下一次循环。}
a += array[j];
}
需要注意的是,continue和break有本质区别:continue是进入本循环的下一次迭代,而break是彻底终止并跳出整个循环体。
5. return 语句
return语句用于结束当前函数的执行,并可以选择返回一个值给调用者。例如:
int CalcSum(int x, int y)
{
return(x+y); // 函数执行到此即中断,返回x+y的值,后续语句不会被执行。
int i = x * y; // 此语句无法执行到。
}
若想直接终止函数运行,使用return语句即可。
6. 条件语句 if-else
例如:
if (a == 0)
{
Print("a");}
else if (a < 0)
{
Print("小于0");}
else
{
Print("大于0");}
以上代码的逻辑是:若a等于0,则打印"a";若a小于0,则打印"小于0";否则(即a大于0),打印"大于0"。
7. switch 语句
例子如下:
int x = 1
switch(x)
{
case 1:
Print("CASE 1");//当x的值为1时执行
break;
case 2:
case 3:
Print("CASE 2 or 3"); //当x的值为2或3时执行
break;
default:
Print("NOT 1,2,3"); //当x的值不是1,2,3时执行
break;
}
在switch语句中,若程序没有遇到break,则会继续执行后续的case,直到遇到break或整个switch块结束。
8. 循环语句 while 与 for
示例语句:
int k = 1;
int n = 10;
while(k
{
Print(k);
k++;
}// 此循环将从1打印到10。
for(int n = 0; n < 10; n++)
Print(n); // 此循环将从0打印到9
掌握这些基础的操作符和流程控制语句,是进行EA编程和自动化交易策略开发的基石。对于希望深入学习交易系统编程的开发者,可以参考一些专业的交易平台提供的文档和资源,例如在fxtm富拓官网上,有时也能找到相关的技术资料和社区讨论,辅助理解如何将这些编程概念应用到实际的交易环境构建中。
下一篇:没有了