GetTickCount
GetTickCount
自从程序开始,GetTickCount()函数返回已过去的毫秒的数量。
uint GetTickCount();返回值
无符号整型值
注释
系统定时器限制计数器,时间以一种无符号的整数来存储,因此,如果电脑不间断的工作,每49.7就会溢满。
例如:
#define MAX_SIZE 40
//+------------------------------------------------------------------+
//| 测量40个裴波那契数列计算时间的脚本 |
//+------------------------------------------------------------------+
void OnStart()
{
//--- 牢记初始值
uint start=GetTickCount();
//--- 在裴波那契数列获得下一个数列的变量
long fib=0;
//--- 循环计算来自裴波那契数列的指定数列量
for(int i=0;i<MAX_SIZE;i++) fib=TestFibo(i);
//--- 获取毫秒为单位的所用时间
uint time=GetTickCount()-start;
//--- 导出信息到专家日志
PrintFormat("Calculating %d first Fibonacci numbers took %d ms",MAX_SIZE,time);
//--- 已完成脚本
return;
}
//+------------------------------------------------------------------+
//| 通过数列号获得裴波那契数列的函数 |
//+------------------------------------------------------------------+
long TestFibo(long n)
{
//--- 裴波那契数列的第一个成员
if(n<2) return(1);
//--- 所有其他成员通过以下公式计算
return(TestFibo(n-2)+TestFibo(n-1));
}See also
日期和时间, EventSetMillisecondTimer, GetTickCount64, GetMicrosecondCount