C/C++における時間に関する関数clock()


『C専门家プログラミング』を読んでいる时、その中の前言部分の时间に関するプログラムは私にまだCの中の时间に関する関数にあまり详しくないことを発见させて、そこで资料を调べて、だんだん勉强することにしました.
関数:clock()
#include <stdio.h>
#include <time.h>
#include <windows.h>

int main()
{
	Sleep(1000);
	printf("Up to now, this programme lasts %d ms and it's %d seconds
",clock(),clock()/CLOCKS_PER_SEC); /*clock(), , CLOCKS_PER_SEC */ Sleep(1000); printf("Up to now, this programme lasts %d ms and it's %d seconds
",clock(),clock()/CLOCKS_PER_SEC); }

clock()の役割は、プログラムが実行開始からこの関数が現れるまで実行されたクロック数(clock ticks)を返し、マクロCLOCKS_PER_SECであるプログラムが実行された秒数で除算することである.
そのタイミング開始点はメインプログラムint main()から始まります.他の関数に現れても、次のプログラムを参照してください.
#include <stdio.h>
#include <time.h>
#include <windows.h>
int wait()
{
	Sleep(3000);
	printf("%d
",clock()); } int main() { Sleep(1000); printf("Up to now, this programme lasts %d ms and it's %d seconds
",clock(),clock()/CLOCKS_PER_SEC); wait(); }

7行目のclock()がwait()から計時を開始した場合、3000が表示されるはずですが、実際の実行結果は4000であり、clock()がプログラムの実行から計数されたことを示しており、呼び出された関数から実行されてからではありません.
注意:異なるマシン上のクロック数(clock ticks)には微細な違いがある可能性があります.