【问题标题】:How do I convert a time to tm struct instead of CTime class如何将时间转换为 tm 结构而不是 CTime 类
【发布时间】:2011-04-23 02:10:49
【问题描述】:

我目前有从定义的值创建 CTime 对象的代码。

#define TIME_VALUE 0x301DDF00  // Aug 1, 1995 @ 04:00:00

CTime t = CTime( TIME_VALUE );

这将创建所需的日期 1995 年 8 月 1 日 04:00:00

我不能再使用 CTime,所以我尝试改用 time_t 和 tm。由于 CTime 构造函数采用自 1970 年 1 月 1 日以来的秒数,而 time_t 表示自 1970 年 1 月 1 日以来的秒数,我尝试使用以下代码。

#define TIME_VALUE 0x301DDF00  // Aug 1, 1995 @ 04:00:00

time_t tmpTime = TIME_VALUE;
struct tm createTime;

if( localtime_s( &createTime, &tmpTime ) == S_OK )
{ 
 // Use createTime
}

createTime 结束于 0095 年 8 月 1 日 04:00:00。我应该如何成功地从定义的值转到 time_t 和 tm?

提前致谢。

【问题讨论】:

    标签: time-t ctime


    【解决方案1】:

    对不起。我没有足够仔细地查看 tm 文档。年份是实际年份减去 1900,月份是从零开始的。我现在明白了。

    【讨论】:

      猜你喜欢
      • 2023-03-17
      • 1970-01-01
      • 2011-06-12
      • 2023-01-22
      • 2022-11-12
      • 1970-01-01
      • 2019-03-24
      • 1970-01-01
      • 2018-06-23
      相关资源
      最近更新 更多