我想以 hh:mm:ss:ms(milliseconds) 格式打印时间。我可以以 hh:mm:ss 的形式打印。打印剩余毫秒的方法是什么?
问问题
1941 次
3 回答
3
#include<sys/timeb.h>
#include<time.h>
int main(void) {
struct timeb tp;
ftime(&tp);
char timeString[80];
strftime(timeString, sizeof(timeString), "%H:%M:%S", localtime(&tp.time));
printf("%s:%d", timeString, tp.millitm);
return 0;
}
于 2012-04-10T13:51:18.163 回答
1
这就是我在linux中使用的...
struct timeval tv;
gettimeofday(&tv,0);
time_t long_time;
struct tm *newtime;
time(&long_time);
newtime = localtime(&long_time);
char result[100] = {0};
sprintf(result, "%02d:%02d:%02d.%03ld", newtime->tm_hour,newtime->tm_min,newtime->tm_sec, (long)tv.tv_usec / 1000);
return result;
我没有在 Windows 中工作的经验.. 尝试找到类似的电话..
于 2012-04-10T13:33:19.323 回答
1
如果您正在使用 MSDN 库,您可以尝试
GetSystemTimeAsFileTime( pointerToSetToTime );
它将指针参数设置为以 100 纳秒为间隔的当前系统时间。
于 2012-04-10T13:46:21.323 回答