我想获取系统时间,包括秒的小数部分。在标准c(ANSI C)中可以吗?
如果没有,请告诉我一些用于Windows OS的库,以便我能够实现。在Linux中,我有以下适合我的代码。
#include <sys/time.h>
#include <time.h>
#include <stdlib.h>
#include <stdio.h>
int main(void)
{
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);
return 0;
}
输出为
2009年12月25日11:09:18.35443541
请帮助我,窗口操作系统怎么可能。如果ANSI C不允许我。
最佳答案
标准C不提供亚秒级的分辨率计时。
POSIX确实提供了亚秒级的分辨率计时-实际上,有多种不同的计时方式,包括显示的gettimeofday()
。
关于c++ - 如何使用time.h在UTCTime中获得秒的小数部分,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1957141/