mt4函数和编程必备(2)

2020-04-14 06:25

<= Less than or equals > Greater than >= Greater than or equals == Equals From left to right != Not equal & Bitwise AND operation From left to right ^ Bitwise exclusive OR From left to right | Bitwise OR operation From left to right && Logical AND From left to right || Logical OR From left to right = Assignment From right to left += Assignment addition -= Assignment subtraction *= Assignment multiplication /= Assignment division %= Assignment module >>= Assignment right shift <<= Assignment left shift &= Assignment bitwise AND |= Assignment bitwise OR ^= Assignment exclusive OR , Comma From left to right 操作符 [Operators]

格式和嵌套

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

复合操作符

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

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

表达式操作符

任何以分号(;)结束的表达式都被视为是一个操作符。 Assignment operator. Identifier=expression;

标识符=表达式;

示例:

x=3; y=x=3; // 这是错误的 一个操作符中只能有一个表达式。 调用函数操作符

Function_name(argument1,..., argumentN);

函数名称(参数1,...,参数N);

示例:

fclose(file); 空操作符

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

停止操作符

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

// 从0开始搜索数组 for(i=0;i

继续操作符

一个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 (expression) operator;

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

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

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

如果表达式为真那么执行operator1,如果为假执行operator2,else后还可以跟进多个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(\}

选择操作符 switch switch (expression) {

case constant1: operators; break; case constant2: operators; break; ...

default: operators; break;

}

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

case 3+4: //正确的 case X+Y: //错误的 被选择的结果只可以是常数,不可为变量或表达式。 示例:

switch(x) { case 'A': Print(\break; case 'B': case 'C': Print(\break; default: Print(\break; }

循环操作符 while while (expression) operator;

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

while(k

循环操作符 for

for (expression1; expression2; expression3) operator;

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

operator; expression3; }; 示例:

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

for(i=0,j=n-l;i

函数定义

一个函数是由返回值、输入参数、内嵌操作所组成的。 示例:

double // 返回值类型 linfunc (double x, double a, double b) // 函数名和输入参数 { // 内嵌的操作 return (a*x + b); // 返回值 } 如果没有返回值那么返回值的类型可以写为void 示例:

void errmesg(string s) { Print(\}

函数调用

function_name (x1,x2,...,xn) 示例:

int somefunc() { double a=linfunc(0.3, 10.5, 8); } double linfunc(double x, double a, double b) { return (a*x + b); }

特殊函数 init()、deinit()和start()

init()在载入时调用,可以用此函数在开始自定义指标或者自动交易之前做初始化操作。 deinit()在卸载时调用,可以用此函数在去处自定义指标或者自动交易之前做初始化操作。 start()当数据变动时触发,对于自定义指标或者自动交易的编程主要依靠此函数进行。

变量 [Variables]

定义变量 定义基本类型 基本类型包括


mt4函数和编程必备(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:江苏省机关第六届万人学法知识竞赛 网上答题试卷4

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: