如何将GetTickCount()的输出转换为时间格式? [英] How to convert the output of GetTickCount() into time format?
问题描述
嗨朋友们,
我一度陷入困境。我通过使用GetTickCount()函数获得毫秒。现在我想用日期时间格式转换它,如HH:MM:SS格式。
MFC是否提供api直接转换,或者我会用其他方式?请建议我解决方案。
DWORD dwTickCount = GetTickCount();
DWORD m_dwNextCommandTickCount =(DWORD)(dwDiff * 1000 / dFrameRate + dwTickCount);
在上面的代码我要转换时间格式的dwTickCount和m_dwNextCommandTickCount。
提前谢谢
该值以毫秒为单位...
DWORD ticks = GetTickCount();
DWORD毫秒=刻度% 1000 ;
ticks / = 1000 ;
DWORD seconds = ticks% 60 ;
ticks / = 60 ;
DWORD分钟=滴答% 60 ;
ticks / = 60 ;
DWORD小时=滴答; // 可能超过24小时。
printf( %d:%02d:%02d。%03d \ n,小时,分钟,秒,毫秒);
如果您不关心毫秒,MFC的CTimeSpan课程可能适合您。
CTimeSpan span(ticks / 1000);
printf(%d%02d:%02d:%02d \ n,span.GetDays(),span.GetHours(),span.GetMinutes(),span.GetSeconds());
Hi Friends,
I have stuck at one point. I get milliseconds by using GetTickCount() function. Now I want to convert it in date-time format like HH:MM:SS format.
Is MFC provide api to convert this directly, or I will use any other way? Please suggest me the solution.
DWORD dwTickCount = GetTickCount();
DWORD m_dwNextCommandTickCount = (DWORD)(dwDiff * 1000/dFrameRate + dwTickCount);
In above code I want to convert both dwTickCount and m_dwNextCommandTickCount in time format.
Thanks in advance
The value is in milliseconds so ...
DWORD ticks = GetTickCount(); DWORD milliseconds = ticks % 1000; ticks /= 1000; DWORD seconds = ticks % 60; ticks /= 60; DWORD minutes = ticks % 60; ticks /= 60; DWORD hours = ticks; // may exceed 24 hours. printf("%d:%02d:%02d.%03d\n", hours, minutes, seconds, milliseconds);
If you don't care about milliseconds, MFC's CTimeSpan class may work for you.
CTimeSpan span(ticks/1000); printf("%d %02d:%02d:%02d\n", span.GetDays(), span.GetHours(), span.GetMinutes(), span.GetSeconds());
这篇关于如何将GetTickCount()的输出转换为时间格式?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!