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

时间:2025-03-25 08:19:58

方法一 利用GetTickCount函数(ms)

代码:

CString str;         
 

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

。。。。。。
//to do sth

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

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

AfxMessageBox(str); 

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

代码:

#include""

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
=("现在时间是%Y年%m月%d日  %X"
);

AfxMessageBox(str);


 

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

SYSTEMTIME st;

CString strDate,strTime;

GetLocalTime(
&
st);

(
"M----"
,,,);

(
"-:-:-"
,,,);

AfxMessageBox(strDate);

AfxMessageBox(strTime);

 

方法五 利用API函数

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

 

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