關於該資料型別的定義如下:
#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...