計時函式clock 與資料型別clock t

2021-10-09 23:07:54 字數 1340 閱讀 4973

關於該資料型別的定義如下:

#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)
需要注意:在linux系統下,clocks_per_sec的值可能有所不同,使用linux列印出來的值是1000000,表示的是微秒。

clock_t clock

(void

);

clock_t是用來儲存時間的資料型別,返回的單位是毫秒,如果想返回以秒為單位可以用:clock() / clocks_per_sec來計算。返回值表示該程式從啟動到函式呼叫占用cpu的時間。這個函式返回從「開啟這個程式程序」到「程式中呼叫clock()函式」之間的cpu時鐘計時單元數,在msdn中稱為掛鐘時間(wal-clock);若掛鐘時間不可取,則返回-1。

void

elapsed_time()

#include

#include

#include

intmain()

執行結果:

time to do 10000000 empty loops is 0.012000 seconds
時鐘計時單元的長度為1毫秒,則計時的精度也為1毫秒,那麼我們可不可以通把clocks_per_sec定義的更大來使計時精度更高呢?答案是不可以,在標準c/c++中,最小的計時單位是1毫秒。

巨集clocks_per_sec適用於將計算系統時間型別轉換為使用者可讀的秒時間,包含於標頭檔案time.h中。

利用clock()函式和for迴圈可以完成程式的定時暫停:

#include

#include

using

namespace std;

intmain()

// ...

return0;

}

C語言計時函式clock

c語言clock 函式實現計時功能 函式clock 返回值為clock t型別 乙個長整型數 它的實際意義是指 程序啟動到呼叫clock 函式經過了多少個cpu時鐘計時單元 借助clocks per sec這個常量可以把clock t轉化為以秒為單位的數值。下面是它的用法 include clock...

SQL SERVER資料型別與C 資料型別對照表

sql server型別 c 型別 精確數字 bigint 從 2 63 9223372036854775808 到 2 63 1 9223372036854775807 的整型資料 所有數字 儲存大小為 8 個位元組。int64 int從 2 31 2,147,483,648 到 2 31 1 2...

SQL SERVER資料型別與C 資料型別對照表

sql server 型別 c 型別 精確數字 bigint 從 2 63 9223372036854775808 到2 63 1 9223372036854775807 的整型資料 所有數字 儲存大小為 8 個位元組。int64 int 從 2 31 2,147,483,648 到2 31 1 2...