缺省的初始化函数(指标编程教程第四篇:基础语法、数据类型、函数声明)

提示

这是 2011 年写的一个系列教程。

声明一个函数

这一篇介绍一些编程基础,还是以默认的 MT5 指标程序为例。注释前一篇已经讲过了,拿初始化函数开讲。

int OnInit()
{
    return(0);
}

声明一个自定义指标函数,大致结构是:

返回值的数据类型 函数名(参数1类型 参数1, 参数2类型 参数2, ...)
{
    执行语句1;
    执行语句2;
    ...
}

常用的数据类型

关键字 类型 说明 举例
int 整数值型 约正负 20 亿以内的整数。 2; 1854; 96
char 字符型 字母和一些常用英文符号(个位数字也可以是一个字符),用引号括起来。 "a"; "e"; "-"; "3"
string 字符串型 一串字符,用引号括起来。 "abcdef"; "12345"; "abc123"
bool 布尔型 值为 truefalse,表示“真”或“假”,另外整数 0 也是“假”,非零整数为“真”。 true; false; 0; 1; 2
datetime 时间型 日期时间型常量可被当做数字串,由 6 个部分的字符组成:年、月、日(或是日、月、年)、时、分、秒,数据以 D 开头,时间值用单引号括起来。 D'1980.07.19 12:30:27'
color 颜色型 表示颜色。 0xFFFFFF(十六进制的白色); clrBlack(黑色); C'128,128,128'(RGB 里的灰色)
float 单精度浮点型 小数,7 位有效数字。 1.234567
double 双精度浮点型 更精确的小数,15 位有效数字。 1.23456789012
void 空类型 声明一个特殊类型的变量或函数,一个空类型的函数没有返回值,一个空类型的指针可以指向任何地址(MT5/MQL5 指标编程通常用不到指针)。  

最常用的是这几个,还有比如 shortlong 分别表示小整数和大整数,关于颜色的换算以后用到的时候再讲。

标识符

标识符是用来给函数和变量命名用的,长度不能超过 63 个字节。可以使用数字 0-9、拉丁字母大写 A-Z 和小写 a-z(大小写有区分的),还有下划线 _。此外首字母不可以是数字,不能和保留字冲突。

比如:abca1ba_b 都是合法的,123a 就不是合法的。初始化函数的名字就是 OnInit

刚才提到了保留字,保留字就是数据类型、声明、计算,等要用到的,慢慢会介绍全的。

参数

参数要放在括号里,多个参数要用逗号隔开,如:OnInit(参数1, 参数2, 参数3)。后面的 OnCalculate 函数就有若干个参数。

函数体

一个函数内所有要运行的语句都要用大括号括起来,并且每个语句要用分号结束以区分:

init OnInit(类型1 参数1, 类型2 参数2, 类型3 参数3){
    语句1;
    语句2;
    语句3;
}

要注意的是最后一个参数后面不要加逗号,最后一个语句后面依然要有分号。

现在这个函数内就只有一句 return(0);,除了空型函数,所有函数都要返回一个值,根据声明时声明的数据类型,也就是大部分函数后面都要加一句 return(某个值); 才行。目前初始化函数返回零。

  • 868
回复内容较长可以拖右下角↑
回到
顶部