1. 程式人生 > >C++中clock()函式的使用

C++中clock()函式的使用

函式宣告:clock_t clock( void );

clock_t 是 long 型,typedef long clock_t;

clock() 使用的標頭檔案是:time.h

CLOCK_PER_SEC表示每一秒經歷的時鐘數。通常我們用clock_t now = clock(); while(i--);  finish = clock(); seconds = (finish - now)/CLOCK_PER_SEC; seconds表示程序持續的時間。

例如MSDN中一個clock()的例子:

#include"time.h"
#include"stdlib.h"
#include"stdio.h"

void sleep( clock_t wait );

void main( void )
{
  long    i = 600000L;
  clock_t start, finish;
  double  duration;

 
  printf( "Delay for three seconds\n" );
  sleep( (clock_t)3 * CLOCKS_PER_SEC );
  printf( "Done!\n" );

 
  printf( "Time to do %ld empty loops is ", i );
  start = clock();
  while( i-- )
     ;
  finish = clock();
  duration = (double)(finish - start) / CLOCKS_PER_SEC;
  printf( "%2.1f seconds\n", duration );
}


void sleep( clock_t wait )
{
  clock_t goal;
  goal = wait + clock();
  while( goal > clock() )
     ;
}
Output
Delay for three seconds Done! Time to do 600000 empty loops is 0.1 seconds