工具/软件:TI C/C++编译器
我正在使用代码编辑器工作室版本:6.1 .1.0.0022万 ,并使用编译器版本8.1 .0为C6748 DSP构建。 当我将TM结构传递到mktime (tm_year设置为117)时,mktime返回值,例如3702884356。 似乎mktime假定tm_year是1970年以后的年份,而不是1900年以后的年份。 我尝试过编译器版本8.1 ................................3,结果相同。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:TI C/C++编译器
我正在使用代码编辑器工作室版本:6.1 .1.0.0022万 ,并使用编译器版本8.1 .0为C6748 DSP构建。 当我将TM结构传递到mktime (tm_year设置为117)时,mktime返回值,例如3702884356。 似乎mktime假定tm_year是1970年以后的年份,而不是1900年以后的年份。 我尝试过编译器版本8.1 ................................3,结果相同。
Bernie Whalen 说:当我将TM结构传递到mktime且tm_year设置为117 mktime时,会返回一个值,例如3702884356。
TI RTS库中Time_t的默认时间点是1900年1月1日。 从mktime返回的结果是自该日期以来的秒数。 作为健全性检查,2017年1月1日12:00 AM的结果可以通过将这些结果相乘来粗略计算...
60秒一分钟 60分钟一小时 24小时一 年365天(忽略闰年) 自1900年以来117年
...这就是36.89712亿。 我怀疑你预计Time_t的时代是1970年1月1日。 您可以通过使用预定义符号 __TI_Time_Uses_64进行构建来获得该行为。 有关详细信息 ,请参阅Wiki文章时间和时钟RTS功能。
谢谢,此致,
-George