我试图从计算机上获取系统时间,由于某种原因,我无法获得正确的打印值。

我的代码:

    SYSTEMTIME st;
    GetSystemTime(&st);
    CString mill;
    mill.Format("%02d:%02d:%02d,%03d", st.wHour, st.wMinute, st.wSecond, st.wMilliseconds);
    MessageBox(mill);


输出:

02:01:02,692


我在上午10.01点运行此功能。

我不明白为什么st.wHour会给我02。在这个问题上的任何帮助将不胜感激。

最佳答案

返回的SYSTEMTIME可能具有UTC时区。也就是说,如果您在加利福尼亚,则可享受8个小时的休息时间。尝试改用GetLocalTime()。

关于c++ - 无法提供正确值的GetSystemTime()MFC C++,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21034941/

10-13 02:58