繁体   English   中英

__time32_t时间精度?

[英]__time32_t time precision?

我正在使用一个API,该API使用两个__time32_t对象打开一个指向数据库的游标,并指定要查询的开始和结束时间。

__time32_t是否具有亚秒(毫秒)的时间精度? MSDN尚不清楚。

我拥有的time32_t对象是这样做的:

currentET-=.1;

我希望给我的时间在currentET内减去10毫秒,但它所做的只是减去一整秒,就像我这样做:

currentET-=1;

如何将这种精度返回到time32_t对象中?

__time32_t只是整数类型-除了积分之外,它没有任何特定的分辨率。 __time32_t使用的典型函数确实具有1秒的分辨率。

这是产生亚秒级准确时间输出的示例。 原谅使用TCHAR宏...旧代码库。

void getCurrTimeString(TCHAR* mytime)
{
    _timeb myTime;
    struct tm * timeinfo;

    _ftime64_s( &myTime );
    time_t rawtime = myTime.time;
    unsigned short myMillis = myTime.millitm;
    timeinfo = localtime ( &rawtime );
    _stprintf(mytime,_T("%d-%02d-%02dT%02d:%02d:%02d.%03d"),
        (1900+timeinfo->tm_year),
        (timeinfo->tm_mon+1),
        timeinfo->tm_mday,
        timeinfo->tm_hour,
        timeinfo->tm_min,
        timeinfo->tm_sec,
        myMillis);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM