你可以尝试使用高精度计时器(High Resolution Timer),它可以提供更高的精度。使用该计时器的方法是使用QueryPerformanceCounter函数获得当前计数器的值,并使用QueryPerformanceFrequency函数获得计数器的频率,然后计算时间间隔。

以下是一个示例代码:

#include <windows.h>

int main()
{
    LARGE_INTEGER frequency;
    LARGE_INTEGER start;
    LARGE_INTEGER end;

    QueryPerformanceFrequency(&frequency);
    QueryPerformanceCounter(&start);

    // Do something here

    QueryPerformanceCounter(&end);

    double interval = (double)(end.QuadPart - start.QuadPart) / frequency.QuadPart;
    // interval即为经过的时间,单位为秒
}

需要注意的是,高精度计时器不适用于长时间的计时,因为它可能会遇到溢出问题。如果需要长时间的计时,建议使用循环调用的方式。


原文地址: https://www.cveoy.top/t/topic/b7Mg 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录