C++ 统计程序运行耗时的几种方法的总结

方法一 利用GetTickCount函数(ms)

代码:

CString str;         
 

longt1=GetTickCount();//程序段开始前取得系统运行时间(ms)            

。。。。。。
//to do sth

longt2=GetTickCount();//程序段结束后取得系统运行时间(ms)        

str.Format(
"time:%dms",t2-t1);//前后之差即程序运行时间        

AfxMessageBox(str); 

方法二利用C/C++计时函数(s)

代码:

#include"time.h"

clock_t   start,   finish;

start
=clock(); 

finish
= clock();

printf("%f seconds\n",(double)(finish-start)/CLOCKS_PER_SEC);

 

方法三  利用CTime类 获取系统时间

代码:

CString str;

//获取系统时间


CTime tm;

tm
=CTime::GetCurrentTime();

str
=tm.Format("现在时间是%Y年%m月%d日  %X"
);

AfxMessageBox(str);


 

方法四  利用GetLocalTime类获取系统时间

SYSTEMTIME st;

CString strDate,strTime;

GetLocalTime(
&
st);

strDate.Format(
"M----"
,st.wYear,st.wMonth,st.wDay);

strTime.Format(
"-:-:-"
,st.wHour,st.wMinute,st.wSecond);

AfxMessageBox(strDate);

AfxMessageBox(strTime);

 

方法五 利用API函数

BOOL QueryPerformanceCounter(
  LARGE_INTEGER *lpPerformanceCount   // counter value
);

 

我目前找到的也就这几种方法,如果还有什么新的方法,和大家一起分享一下。

 

你可能感兴趣的:(C++,C++)