【发布时间】:2011-03-19 14:04:49
【问题描述】:
你知道如何使用 gettimeofday 来测量计算时间吗?我可以通过这段代码测量一次:
char buffer[30];
struct timeval tv;
time_t curtime;
gettimeofday(&tv, NULL);
curtime=tv.tv_sec;
strftime(buffer,30,"%m-%d-%Y %T.",localtime(&curtime));
printf("%s%ld\n",buffer,tv.tv_usec);
这个是在计算之前制作的,第二个是在计算之后制作的。但是你知道怎么减吗?
我需要以毫秒为单位的结果
【问题讨论】:
-
gettimeofday实际上不应该用于测量经过的时间。请改用clock_gettime(CLOCK_MONOTONIC)。 Here's why -
printf 语句中的“ld”是什么?以及为什么在某些程序中 ===> printf("time = %06lu\n", now.tv_usec);用来?引号中的 06 是什么?
-
一个非常不错的网站,有一些很好的参考,有时还有一些例子,但也有其他的,比如维基书。 techonthenet.com/c_language/standard_library_functions/time_h/…
-
@Beginner...... %ld 是格式说明符:用于长十进制,%06lu 是格式说明符:用于带 6 个前导零的长无符号...您可以阅读 printf此处的格式说明符:cplusplus.com/reference/cstdio/printf
标签: c