//定义了两个宏,用来计算并显示某段计算步骤所经历的时间
#define TimeCountStart CTime startTime = CTime::GetCurrentTime();/
struct _timeb timebuffer;/
int mills1,mills2;/
_ftime(&timebuffer);/
mills1=timebuffer.millitm;/
CString str;/
#define TimeCountEnd CTime endTime = CTime::GetCurrentTime();/
CTimeSpan elapsedTime = endTime - startTime;/
_ftime(&timebuffer);/
mills2=timebuffer.millitm;/
long int timeused;/
timeused=elapsedTime.GetTotalSeconds();/
if (mills1<=mills2)/
timeused=timeused*1000+(mills2-mills1);/
else/
timeused=(timeused-1)*1000+(mills1-mills2);/
str.Format ("该步骤所用时间:%d 毫秒",timeused);/
::AfxMessageBox(str);
本文介绍了一种通过宏定义来计算程序中特定步骤所需时间的方法。利用C/C++中的CTime类及_ftime函数,定义了两个宏:TimeCountStart用于记录开始时间,TimeCountEnd则用于计算并输出该步骤的总耗时(毫秒)。这种方法适用于需要快速插入时间统计功能而不修改原有代码逻辑的情况。
457

被折叠的 条评论
为什么被折叠?



