本文介绍了Ç得到系统时间微秒在Windows准确性?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

可能重复:结果
  measuring时间在C ++微秒?

有没有一种简单的方法我能得到系统时间在Windows计算机上,下降到微秒精度的?

Is there a simple way i can get the system time on a Windows machine, down to microsecond accuracy?

推荐答案

看GetSystemTimeAsFileTime

Look at GetSystemTimeAsFileTime

它给你精度0.1微秒或100纳秒。

It gives you accuracy in 0.1 microseconds or 100 nanoseconds.

请注意,它是从大纪元大纪元POSIX不同。

Note that it's Epoch different from POSIX Epoch.

因此​​,要获得POSIX时间以微秒您需要:

So to get POSIX time in microseconds you need:

    FILETIME ft;
    GetSystemTimeAsFileTime(&ft);
    unsigned long long tt = ft.dwHighDateTime;
    tt <<=32;
    tt |= ft.dwLowDateTime;
    tt /=10;
    tt -= 11644473600000000ULL;

因此​​,在这种情况下时间(0)== TT /百万

这篇关于Ç得到系统时间微秒在Windows准确性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-11 06:52