2£® ¼ÆÊ±
C/C++ÖеļÆÊ±º¯ÊýÊÇclock()£¬¶øÓëÆäÏà¹ØµÄÊý¾ÝÀàÐÍÊÇclock_t¡£ÔÚMSDNÖУ¬²éµÃ¶Ôclockº¯Êý¶¨ÒåÈçÏ£º
clock_t clock( void );
Õâ¸öº¯Êý·µ»Ø´Ó“¿ªÆôÕâ¸ö³ÌÐò½ø³Ì”µ½“³ÌÐòÖе÷ÓÃclock()º¯Êý”ʱ֮¼äµÄCPUʱÖÓ¼ÆÊ±µ¥Ôª£¨clock tick£©Êý£¬ÔÚMSDNÖгÆÖ®Îª¹ÒÖÓʱ¼ä£¨wal-clock£©¡£ÆäÖÐclock_tÊÇÓÃÀ´±£´æÊ±¼äµÄÊý¾ÝÀàÐÍ£¬ÔÚtime.hÎļþÖУ¬ÎÒÃÇ¿ÉÒÔÕÒµ½¶ÔËüµÄ¶¨Ò壺
#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)
¿ÉÒÔ¿´µ½Ã¿¹ýǧ·ÖÖ®Ò»Ã루1ºÁÃ룩£¬µ÷ÓÃclock£¨£©º¯Êý·µ»ØµÄÖµ¾Í¼Ó1¡£ÏÂÃæ¾Ù¸öÀý×Ó£¬Äã¿ÉÒÔʹÓù«Ê½clock()/CLOCKS_PER_SECÀ´¼ÆËãÒ»¸ö½ø³Ì×ÔÉíµÄÔËÐÐʱ¼ä£º
void elapsed_time()
{
printf("Elapsed time:%u secs.\n",clock()/CLOCKS_PER_SEC);
}
µ±È»£¬ÄãÒ²¿ÉÒÔÓÃclockº¯ÊýÀ´¼ÆËãÄãµÄ»úÆ÷ÔËÐÐÒ»¸öÑ»·»òÕß´¦ÀíÆäËüʼþµ½µ×»¨Á˶àÉÙʱ¼ä£º
#include “stdio.h”
#include “stdlib.h”
#include “time.h”
int main( void )
{
long i = 10000000L;
clock_t start, finish;
double duration;
/* ²âÁ¿Ò»¸öʼþ³ÖÐøµÄʱ¼ä*/
printf( "Time to do %ld empty loops is ", i );
start = clock();
while( i-- )
finish = clock();
duration = (double)(finish - start) / CLOCKS_PER_SEC;
printf( "%f seconds\n", duration );
system("pause");
}
ÔÚ±ÊÕߵĻúÆ÷ÉÏ£¬ÔËÐнá¹ûÈçÏ£º
Time to do 10000000 empty loops is 0.03000 seconds
ÉÏÃæÎÒÃÇ¿´µ½Ê±ÖÓ¼ÆÊ±µ¥ÔªµÄ³¤¶ÈΪ1ºÁÃ룬ÄÇô¼ÆÊ±µÄ¾«¶ÈҲΪ1ºÁÃ룬ÄÇôÎÒÃǿɲ»¿ÉÒÔͨ¹ý¸Ä±äCLOCKS_PER_SECµÄ¶¨Ò壬ͨ¹ý°ÑËü¶¨ÒåµÄ´óһЩ£¬´Ó¶øÊ¹¼ÆÊ±¾«¶È¸ü¸ßÄØ£¿Í¨¹ý³¢ÊÔ£¬Äã»á·¢ÏÖÕâÑùÊDz»Ðеġ£ÔÚ±ê×¼C/C++ÖУ¬×îСµÄ¼ÆÊ±µ¥Î»ÊÇÒ»ºÁÃë¡£
![nixsky[www.nixsky.com]](/templets/images/toplogo.gif)

