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