UNIX 下简单的时间计算方法,可用于检测自己程序运行时间的消耗。。
Prototypes
#ifndef MY_TIME_H #define MY_TIME_H /* * Measure util for timing */ void tstart(void); void tend(void); double tval(void); #endif /* MY_TIME_H */
Implementation
#include <sys/time.h> static struct timeval _tstart, _tend; static struct timezone tz; void tstart(void) { gettimeofday(&_tstart, &tz); } void tend(void) { gettimeofday(&_tend, &tz); } double tval(void) { double t1, t2; t1 = (double)_tstart.tv_sec + (double)_tstart.tv_usec/(1000*1000); t2 = (double)_tend.tv_sec + (double)_tend.tv_usec/(1000*1000); return t2-t1; } #ifdef TEST_MAIN int main(void) { int i, j, val[1024]; tstart(); for ( j = 0; j < 10000; j++ ) { for ( i = 0; i < 1024; i++ ) val[i] = i; } tend(); printf("cost = %f sec.\n", tval()); return 0; } #endif
评论