如何在 C 中获取微秒时间戳?
我正在尝试:
struct timeval tv;
gettimeofday(&tv,NULL);
return tv.tv_usec;
但这会返回一些无意义的值,如果我得到两个时间戳,第二个可以小于或大于第一个(第二个应该总是更大)。是否可以将 gettimeofday 返回的神奇整数转换为实际可以使用的普通数字?
最佳答案
您还需要添加秒数:
unsigned long time_in_micros = 1000000 * tv.tv_sec + tv.tv_usec;
请注意,这只会持续大约 232/106 =~ 4295 秒,或者大约 71 分钟(在典型的 32 位系统上)。
关于c - 以微秒为单位获取 C 中的时间戳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5833094/