C++中计算某一段程序运行时间的方法

1.结果输出是微秒的
  1)头文件  #include<ctime>
        clock_t start, finish;
        start = clock();
        //插入要测试的程序段
         finish = clock();
       cout << finish - start << "/" << CLOCKS_PER_SEC << " (s) " << endl;
   2)头文件  #include<Windows.h>
       DWORD start_time = GetTickCount();
      //中间插入要测试的程序段
        DWORD end_time = GetTickCount();
     cout << "The run time is:" << (end_time - start_time) << "ms!" << endl;

-----------------------------------------------------------------------------------------------------------------------
2.结果输出是微秒的
 头文件 #include <sys/time.h>
#define SECOND_TO_MRCROSECOND          (1000000)
  struct timeval tStart,tEnd;    //驼峰命令,变量保存程序开始时间,和结束时间    
    float timeElapse;                 //变量保存程序耗费时间
 gettimeofday(&tStart,NULL);  //记录程序开始时间
//插入要测试的程序段

 gettimeofday(&tEnd,NULL);    // 记录程序结束时间
timeElapse = tEnd.tv_usec-tStart.tv_usec + SECOND_TO_MRCROSECOND*(tEnd.tv_sec-tStart.tv_sec);    // 以微秒来计数
      printf("Function Elapse Time:%f s\n",timeElapse/ SECOND_TO_MRCROSECOND);  //

 


      

        

猜你喜欢

转载自blog.csdn.net/liangwgl/article/details/79950083