关于计算程序运行时间的方法汇总
关于计算程序运行时间的方法汇总
1、GetTickCount()函数
1.1 函数介绍
该函数是 windows 里面常用来计算程序运行时间的函数;
1.2 使用方法:
DWORD dwStart = GetTickCount();
//这里运行你的程序代码
DWORD dwEnd = GetTickCount();
则(dwEnd-dwStart)就是你的程序运行时间, 以毫秒为单位。这个函数只精确到55ms,1个tick就是55ms。
1.3 代码示例
1 #include <iostream>
2 #include <windows.h>
3 using namespace std;
4 int main( int argc, char * argv[])
5 {
6 DWORD start, end;
7
8 start = GetTickCount();
9 for ( int i= 0 ;i< 1000 ;i++ )
10 cout<< " you are a good child! " <<endl; // your code
11 end = GetTickCount()- start;
12 cout<<end<< endl;
13 return 0 ;
14 }
2、timeGetTime()函数
2.1 函数介绍
timeGetTime()和上一中方法中的GetTickCount()函数类似,但是精度更高。
2.2 使用说明
DWORD dwStart = timeGetTime();
//这里运行你的程序代码
DWORD dwEnd = timeGetTime();
则(dwEnd-dwStart)就是你的程序运行时间, 以毫秒为单位。 虽然返回的值单位应该是ms,但传说精度只有10ms。
2.3 代码示例
1 #include <iostream>
2 #include <windows.h>
3 #pragma comment(lib,"winmm.lib")
4
5 using namespace std;
6 int main( int argc, char * argv[])
7 {
8 DWORD start, end;
9
10 start = timeGetTime();
11 for ( int i= 0 ;i< 100 ;i++ )
12 cout<< " you are a good child! " << endl;
13 end = timeGetTime()- start;
14 cout<<end<< endl;
15 return 0 ;
16 }
3、clock()函数
3.1 函数介绍
用clock()函数,得到系统启动以后的毫秒级时间,然后除以CLOCKS_PER_SEC,就可以换成“秒”,标准c函数。
clock_t clock ( void );
3.2 使用说明
#include <time.h>
clock_t t = clock();
long sec = t / CLOCKS_PER_SEC;
他是记录时钟周期的,实现看来不会很精确,需要试验验证。
3.3 代码示例
1 #include<iostream>
2 #include<ctime> // <time.h>
3 using namespace std;
4 int main()
5 {
6 time_t begin,end;
7
8 double duration;
9 begin= clock();
10 // 这里加上你的代码
11 end= clock();
12
13 duration= double (end-begin)/ CLOCKS_PER_SEC;
14 cout<< " runtime: " <<duration<< endl;
15 }
5、Ctime类
CTime MFC类,好像就是把time.h封了个类,没扩展
CTime t = GetCurrentTime();
或者
CTime curTime(t1);
WORD ms = t1.wMilliseconds;
6、GetLocalTime()函数 GetSystemTime()函数
6.1、函数介绍
WindowsAPI,需要定义SYTEMTIME变量
SYSTEMTIME 结构包含毫秒信息
typedef struct _SYSTEMTIME {
WORD wYear;
WORD wMonth;
WORD wDayOfWeek;
WORD wDay;
WORD wHour;
WORD wMinute;
WORD wSecond;
WORD wMilliseconds;
} SYSTEMTIME, *PSYSTEMTIME;
6.2、使用说明
SYSTEMTIME t1;
GetSystemTime(&t1)
或者
SYSTEMTIME sysTm;
::GetLocalTime(&sysTm);
7. _strtime()函数
7.1、函数介绍
在time.h中的_strtime() //只能在windows中用
7.2 使用说明
char t[11];
_strtime(t);
puts(t);
分类: C++
作者: Leo_wl
出处: http://HdhCmsTestcnblogs测试数据/Leo_wl/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
版权信息