基础知识

MT4编程参考一

字号+ 作者: 来源: 12-06 我要评论( )

语法[Syntax]

代码格式

空格建、Tab键、换行键和换页符都可以成为代码排版的分隔符,你能使用各种符号来增加你带骂得可读性。

注释

多行注释使用/* 作为开始到*/ 结束,在这之间不能够嵌套。单行注释使用// 作为开始到新的一行结束,可以被嵌套到多行注释之中。

示例:

// 单行注释

/* 多行

注释// 嵌套的单行注释

注释结束*/

标识符

标识符用来给变量、函数和数据类型进行命名,长度不能超过31一个字节

你可以使用数字0-9、拉丁字母大写A-Z和小写a-z(大小写有区分的)还有下划线(_)。此外首字母不可以是数字,标识符不能和保留字冲突.

示例:

// NAME1 namel Total_5 Paper

保留字

下面列出的是固定的保留字。不能使用以下任何保留字进行命名。

数据类型

存储类型

操作符

其它

bool

extern

break

false

color

static

case

true

datetime

continue

double

default

int

else

string

for

void

if

return

switch

while

数据类型[Data types

数据类型概述

主要数据类型有:

Integer (int)

Boolean (bool)

Char(char)

String (string)

Floating-point number (double)

Color (color)

Datetime (datetime)

我们用Integer类型数据来作为DateTime和Color数据的存储。

使用以下方式可以进行类型站换:

int (bool,color,datetime);

double;

string;

Integer 类型

十进制: 数字0-9;0不能作为第一个字母

示例:

12, 111, -956 1007

十六进制: 数字0-9;拉丁字母a-f或A-F用来表示10-15;使用0x或者0X作为开始。

示例:

0x0A, 0x12, 0X12, 0x2f, 0xA3, 0Xa3, 0X7C7

Integer 变量的取值范围为-2147483648到2147483647。

Literal 类型

任意在单引号中的字符或十六进制的任意ASCII码例如'/x10'都是被看作为一个字符,

一些字符例如单引号('),双引号("),问号(?),反斜杠(/)和一些控制符都需要在之前加一个反斜杠(/)进行转意后表示出来:

line feed NL (LF) /n

horizontal tab HT /t

carriage return CR /r

reverse slash / //

single quote ' /'

double quote " /"

hexadecimal ASCII-code hh /xhh

以上字符如果不经过反斜杠进行转意将不能被使用

示例:

int a = 'A';

int b = '$';

int c = '©'; // code 0xA9

int d = '/xAE'; // symbol code ®

Boolean 类型

Boolean 用来表示是和否, 还可以用数字1 和0 进行表示。True和Flase可以忽略大小写。

示例:

bool a = true;

bool b = false;

bool c = 1;

Floating-point number 类型

浮点型变量在整数型后面加一个点(.)用来更精确的表示十进制数字。

示例:

double a = 12.111;

double b = -956.1007;

double c = 0.0001;

double d = 16;

浮点型的取值范围从2.2e-308 到1.8e308.

String 类型

字符串型是用来表示连续的ASCII码字符的使用连续的两个双引号来包括需要表示的内容如:"Character constant".

示例:

"This is a character string"

"Copyright symbol /t/xA9"

"this line with LF symbol /n"

"A" "1234567890" "0" "$"

Color 类型

颜色类型可以使用以下示例里的几种方式进行定义。

示例:

// symbol constants

C'128,128,128' // gray

C'0x00,0x00,0xFF' // blue

// named color

Red

Yellow

Black

// integer-valued representation

0xFFFFFF // white

16777215 // white

0x008000 // green

32768 // green

Datetime 类型

时间类型使用年、月、日、时、分、秒来进行定义,你可以使用以下示例中的方式来定义变量。

示例:

D'2004.01.01 00:00' // New Year

D'1980.07.19 12:30:27'

D'19.07.1980 12:30:27'

D'19.07.1980 12' //equal to D'1980.07.19 12:00:00'

D'01.01.2004' //equal to D'01.01.2004 00:00:00'

D'12:30:27' //equal to D'[compilation date] 12:30:27'

D'' //equal to D'[compilation date] 00:00:00'

运算符和表达式[Operations & Expressions]

表达式

一个表达式可以拥有多个字符和操作符,一个表达式可以写在几行里面。

示例:

a++; b = 10; x = (y*z)/w;

注:分号(;)是表达式的结束符。

算术运算符

Sum of values i = j + 2;

Difference of values i = j - 3;

Changing the operation sign x = - x;

Product of values z = 3 * x;

Division quotient i = j / 5;

Division remainder minutes = time % 60;

Adding 1 to the variable value i++;

Subtracting 1 from the variable value k--;

加减1的运算符不能被嵌套在表达式中

int a=3;

a++; // 可行的表达式

int b=(a++)*3; // 不可行的表达式

赋值运算符

注:将右侧的结果赋值给左侧的变量

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

将x的值加到y上面y += x;

在y上面减去x的值y -= x;

得到y的x倍的值y *= x;

得到y除以x的值y /= x;

取y除以x后的余数y %= x;

y向右位移x位y >>= x;

y向左位移x位y <<= x;

得到逻辑AND的值y &= x;

得到逻辑OR的值y |= x;

得到逻辑非OR的值y ^= x;

注:一个表达式只能有一个赋值运算符.

关系运算符

用返回0(False)或1(True)来表示两个量之间的关系。

a是否等于b a == b;

a是否不等于b a != b;

a是否小于b a < b;

a是否大于b a > b;

转载请注明出处。

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

{dede:myad name='artice_ad_01'/}
相关文章
  • 第三代移动平均线 MetaTrader 指标

    2016-11-30 15:02

  • Aroon Up & Down指标

    2016-11-30 15:56

  • MetaTrader4指标 BB MACD指标

    2016-11-30 16:00

  • Beginner MetaTrader

    2016-11-30 16:00