可能重复:
如何在 C 中获得自午夜 UTC 以来的毫秒数?
我试图获取从当天开始(12:00:00.0000 AM)到当前时间之间经过的时间(以毫秒为单位)。我将在 time.h 中使用什么来实现这一目标?
可能重复:
如何在 C 中获得自午夜 UTC 以来的毫秒数?
我试图获取从当天开始(12:00:00.0000 AM)到当前时间之间经过的时间(以毫秒为单位)。我将在 time.h 中使用什么来实现这一目标?
如果您指的是自纪元以来的一天中的时间:
struct timeval time;
gettimeofday(&time, NULL);
如果您的意思是系统时间:
time_t t;
time(&t);
虽然我意识到您要求毫秒,但这就是您如何在几秒钟内得到它:
time(NULL)%(24*60*60)
这是一个简单的方法:
time_t seconds_since_midnight = time(NULL) % 86400;
要获得自午夜以来的大约毫秒数,请乘以
seconds_since_midnight
1000。如果您需要更高的分辨率(考虑您是否真的需要),您将不得不使用另一个功能,例如
gettimeofday()
.