C++程序執行時間


在統計某段程序或某個算法的運行時間時,經常會用到clock()函數

 

clock()是C/C++中的計時函數,與其相關的數據類型是clock_t,頭文件是time.h/ctime。

clock()函數的功能是:返回從“開啟這個程序進程”到“程序中調用clock()函數”時之間的CPU時鍾計時單元數(clock tick)。

在C/C++中,定義了一個常量CLOCKS_PER_SEC,它用來表示一秒鍾會有多少個時鍾計時單元。

clock_t是長整型 long,返回的是整形,通常要以轉換成浮點數類型。

 

使用clock()統計程序運行時間時,需要注意的地方

1.clock()函數測量的是處理器的CPU時間,而不是實際的時間,當使用sleep()函數時,是不會統計sleep的時間的,即clock算出的時間比實際的時間少一些

2.clock()函數測量的是處理器的CPU時間,而不是實際的時間,當開啟多線程的時候,就會發現使用clock算出的時間比實際的時間多了一些

 

#include<bits/stdc++.h>
using namespace std;

int main(){
    clock_t start,finish;
    start = clock();
    for(int i=0;i<1000;i++){
        cout<<i<<endl;
    }
    finish = clock();
    double duration = (double)(finish-start)/CLOCKS_PER_SEC;
    printf("%2.1f seconds\n",duration);
    return 0;
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM