VC中监测函数运行时间

时间:2022-10-10 16:19:25

VC++编程时,经常会监控某个算法的计算时间,以确定算法的效率。
编码举例如下,

     //========start: algorithm time=============
//
SYSTEMTIME st1;
GetLocalTime(&st1);//获取算法处理前,系统时间
//
//========start: algorithm time=============

。。。。。。。。// algorithm processing

     //========end: algorithm time=============
//
SYSTEMTIME st2;
GetLocalTime(&st2);//获取算法结束时系统时间
float tm1,tm2;
float ts1,ts2;
float tms1,tms2;
tm1=st1.wMinute;
tm2=st2.wMinute;//分
ts1=st1.wSecond;
ts2=st2.wSecond;//秒
tms1=st1.wMilliseconds;
tms2=st2.wMilliseconds;//毫秒 if (tms2<tms1)
{
tms2+=;
ts2-=;
}
if (ts2<ts1)
{
ts2+=;
tm2-=;
}
if (tm2<tm1)
{
tm2+=;
}
CString time;
time.Format("CSMesh Topo,run time consume:%f min,%f s,%f ms",tm2-tm1,ts2-ts1,tms2-tms1);
AfxMessageBox(time);
//
//========end: algorithm time=============