1.time
#includetime_t t_start, t_end; int duration; t_start = time(NULL); //单位为s,秒 sleep(1); t_end = time(NULL); //单位为s duration = difftime(t_end, t_start); printf("time duration: %dsn", duration);
2.gettimeofday
#includestruct timeval start, end; float time_use; gettimeofday(&start, NULL); //最小单位为us,微秒 sleep(1); gettimeofday(&end, NULL); //us time_use=(end.tv_sec-start.tv_sec)*1000000+(end.tv_usec-start.tv_usec);//微秒 printf("time_use is %.10fsn",time_use/1000000.0);
3.clock_gettime
#includestruct timespec tpstart; struct timespec tpend; long l_timedif; double timedif; clock_gettime(CLOCK_MONOTONIC, &tpstart); //最小单位为ns,纳秒 sleep(1); clock_gettime(CLOCK_MONOTONIC, &tpend); l_timedif = 1000000*(tpend.tv_sec-tpstart.tv_sec)+(tpend.tv_nsec-tpstart.tv_nsec)/1000; //us,微秒 timedif = (double)l_timedif/1000000.0; //s,秒 printf("timedif: %fsn", timedif);
参考:
time()_百度百科 (baidu.com)
clock_gettime_百度百科 (baidu.com)
gettimeofday_百度百科 (baidu.com)
C++用clock()统计程序运行时间时的坑_litart coder的博客-CSDN博客_c++ clock 不准
difftime_百度百科 (baidu.com)



