MT4第四节之操作符

原文地址:MT4编程参考-第四节 操作符作者:一龙一枪

expressi0n 在新浪博客里成了非法字符,只能换成expressio n。

操作符 [Operators]

格式和嵌套
格式.一个操作符可以占用一行或者多行,两个或多个操作符可以占用更多的行。
嵌套.执行控制符(if, if-else, switch, while and for)可以进行任意嵌套.

复合操作符
一个复合操作符一个(一个区段)和由一个或多个任何类型的操作符组成的的附件{}. 每个表达式使用分号作为结束(;)
示例:

if(x==0)
{
x=1; y=2; z=3;
}


表达式操作符
任何以分号(;)结束的表达式都被视为是一个操作符。
Assignment operator.
Identifier=expressio n;
标识符=表达式;
示例:

x=3;
y=x=3; //
 这是错误的

一个操作符中只能有一个表达式。
调用函数操作符
Function_name(argument1,..., argumentN);
函数名称(参数1,...,参数N);
示例:

fclose(file);

空操作符
只有一个分号组成(;).我们用它来表示没有任何表达式的空操作符.

停止操作符
一个break; , 我们将其放在嵌套内的指定位置,用来在指定情况下跳出循环操作.
示例:

// 0开始搜索数组
for(i=0;i
if((array[i]==0)
break;


继续操作符
一个continue;我们将其放在嵌套内的指定位置,用来在指定情况下跳过接下来的运算,直接跳入下一次的循环。
示例:

// summary of nonzero elements of array
int func(int array[])
{
int array_size=ArraySize(array);
int sum=0;
for(int i=0;i
{
if(a[i]==0) continue;
sum+=a[i];
}
return(sum);
}


返回操作符
一个return;将需要返回的结果放在return后面的()中。
示例:

return(x+y);

 


条件操作符 if
if (expressio n)
operator;

如果表达式为真那么执行操作。
示例:

if(a==x)
temp*=3;
temp=MathAbs(temp);


条件操作符 if-else
if (expressio n)
operator1
else
operator2

如果表达式为真那么执行operator1,如果为假执行operator2else后还可以跟进多个if执行多项选择。详见示例。
示例:

if(x>1)
if(y==2)
z=5;
else
z=6;

if(x>l)
{
if(y==2) z=5;
}
else
{
z=6;
}
//
多项选择
if(x=='a')
{
y=1;
}
else if(x=='b')
{
y=2;
z=3;
}
else if(x=='c')
{
y = 4;
}
else
{
Print("ERROR");
}


选择操作符 switch
switch (expressio n)
{
case constant1: operators; break;
case constant2: operators; break;
...
default: operators; break;
}

当表达式expressio n的值等于结果之一时,执行其结果下的操作。不管结果如何都将执行default中的操作。
示例:

case 3+4: //正确的
case X+Y: //
错误的

被选择的结果只可以是常数,不可为变量或表达式。
示例:

switch(x)
{
case 'A':
Print("CASE An");
break;
case 'B':
case 'C':
Print("CASE B or Cn");
break;
default:
Print("NOT A, B or Cn");
break;
}


循环操作符 while
while (expressio n)
operator;

只要表达式expressio n为真就执行操作operator
示例:

while(k
{
y=y*x;
k++;
}


循环操作符 for
for (expressio  n1; expressio n2; expressio n3)
operator;

用表达式1(expressio n1)来定义初始变量,当表达式2(expressio n2)为真的时候执行操作operator,在每次循环结束后执行表达式3(expressio n3)
while可以表示为这样:
expressio n1;
while (expressio n2)
{
operator;
expressio n3;
};

示例:

for(x=1;x<=7;x++)
Print(MathPower(x,2));

使用for(;;)可以造成一个死循环如同while(true)一样.
表达式1和表达式3都可以内嵌多个用逗号(,)分割的表达式。
示例:

for(i=0,j=n-l;i
a[i]=a[j];

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值