clock | Programming Place Plus C言語編 標準ライブラリのリファレンス

トップページC言語編標準ライブラリのリファレンス(名前順)

トップページC言語編標準ライブラリのリファレンス(ヘッダ別)


clock関数

概要

使用したプロセッサ時間を取得する。

ヘッダ

time.h

形式

clock_t clock(void);

引数

なし

戻り値

使用したプロセッサ時間。取得できなかった場合は、-1 を clock_t型でキャストした値が返される。

詳細

実行中のプログラムが、起動されてから現在に至るまでに使用したプロセッサ時間を取得する。途中で他のプログラムに割り込まれた場合、その間に経過した時間は含まれないのが普通である。
返される値は、環境に応じて異なる単位で表現され、CLOCKS_PER_SECマクロの値で割ることによって、秒単位に変換できる。

注意

取得できる値は環境によって精度は異なる。また、実際の精度よりも細かい単位で結果を返す環境もあり得る。たとえば、実際には 1ms の精度しか取得できなくても、1μs 単位の結果を返すかもしれない。

clock_t型は、なんらかの算術型を typedef したものであり、やはり環境によって異なる。この型の大きさによっては、表現できるプロセッサ時間の範囲が非常に狭いかもしれない。

使用例

#include <stdio.h>
#include <time.h>

int main(void)
{
    clock_t begin = clock();
    for (int i = 0; i < 10000000; ++i) {
    }
    clock_t end = clock();

    printf("result: %lf seconds\n", (double)(end - begin) / CLOCKS_PER_SEC); 
}

実行結果:

result: 0.026000 seconds

関連

解説章

第51章


参考リンク


更新履歴

’2018/4/6 全体的に文章を見直して修正。

’2018/1/22 新規作成。



標準ライブラリのリファレンス(名前順)のトップページへ

標準ライブラリのリファレンス(ヘッダ別)のトップページへ

C言語編のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
X で ポストフォロー LINE で送る noteで書く
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る