c/c++中的計時函式是clock(),而與其相關的資料型別是
clock_t
。在msdn中,查得對clock函式定義如下:
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)
void
elapsed_time()
#include 「stdio.h」
#include 「stdlib.h」
#include 「time.h」
intmain(
void
)
在筆者的機器上,執行結果如下:
time to do
10000000 empty loops is 0.03000 seconds
上面我們看到時鐘計時單元的長度為1毫秒,那麼計時的精度也為1毫秒,那麼我們可不可以通過改變clocks_per_sec的定義,通過把它定義的大一些,從而使計時精度更高呢?通過嘗試,你會發現這樣是不行的。在標準c/c++中,最小的計時單位是一毫秒。
C 計算程式執行時間
通過系統函式system.datetime.now獲取執行前的當前時間和執行後的當前時間,然後通過datetime型別本身自帶的subtract方法 從此例項中減去指定時間或持續時間,datetime型別或timespan型別引數 用執行後時間減去執行前時間,獲得執行一段程式所需要的時間。具體 如下...
c 計算程式執行時間
c 中如何記錄程式執行時間 一 clock 計時函式 clock 是c c 中的計時函式,而與其相關的資料型別是clock t。在msdn中,查得對clock函式定義如下 clock t clock void 簡單而言,就是該程式從啟動到函式呼叫占用cpu的時間。這個函式返回從 開啟這個程式程序 到...
計算程式執行時間
在長時間計算程式執行時間時,可以使用clock函式。clock比較通用,精度並不是特別的高,大約是10ms。但是對於長時間的計算的話,還是可以使用的。以下是一段示例程式,將幫助你理解 include stdio.h include memory.h include time.h define siz...