在c語言中有專門處理系統時間,程序計時等等功能的庫,
即time.h
在time.h中函數clock_t clock( void )可以完成計時功能。
這個函數返回從“開啓這個程序進程”到“程序中調用clock()函數”時之間的CPU時鐘計時單元(clock tick)數,在MSDN中稱之爲掛鐘時間(wal-clock)。其中clock_t是用來保存時間的數據類型,在time.h文件中,我們可以找到對它的定義:
#ifndef _CLOCK_T_DEFINED
typedef long clock_t;
#define _CLOCK_T_DEFINED
#endif
很明顯,clock_t是一個長整形數。在time.h文件中,還定義了一個常量CLOCKS_PER_SEC,它用來表示一秒鐘會有多少個時鐘計時單元,其定義如下:
#define CLOCKS_PER_SEC ((clock_t)1000)
可以看到每過千分之一秒(1毫秒),調用clock()函數返回的值就加1。
下面這個程序計算了循環1千萬次所用的時間:
#include “stdio.h”
#include “stdlib.h”
#include “time.h”
int main( void )
{
long i = 10000000L;
clock_t start, finish;
double duration;
printf( "Time to do %ld empty loops is ", i );
start = clock();
while( i-- ) ;
finish = clock();
duration = (double)(finish - start) / CLOCKS_PER_SEC;
printf( "%f seconds\n", duration );
system("pause");
}
運行結果如下:
Time to do 10000000 empty loops is 0.03000 seconds
C語言中測試程序運行時間
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
C++ builder 寫 DLL
-小蛙-
2020-06-17 09:59:13
不用臨時變量交換兩個數的值
lpt19832003
2020-02-25 09:20:25
解析VC++ Name Mangling 機制
xt_xiaotian
2020-02-24 04:19:23
C++關鍵字static
xt_xiaotian
2020-02-24 04:19:23
C/C++函數調用約定
xt_xiaotian
2020-02-24 04:19:23
C++之標準庫類型string(g++)
-小蛙-
2020-02-21 12:27:59
VictorComm於XE8中安裝與簡易使用
-小蛙-
2020-02-21 12:27:59
C++builder Property屬性
-小蛙-
2020-02-21 12:27:59
窗體程序調C寫DLL(其中調C++寫DLL),Runtime Error
-小蛙-
2020-02-21 12:27:59
在Ubuntu10.04中建立ARM交叉編譯環境
xt_xiaotian
2018-09-04 07:57:57