【发布时间】:2015-10-20 21:59:40
【问题描述】:
我突然想到,我不知道存储 1970 年 1 月之前日期的机制。 1 作为 Unix 时间戳。由于那个日期是 Unix“纪元”,这并不令人意外。
但是 - 即使它不是为此而设计的 - 我仍然希望以 Unix 格式存储很久以前的日期。
我需要这个是有原因的。
所以我的问题是:如何让 unix-timestamps 包含“无效”但仍然有效的日期?存储负数的秒数会起作用吗?我们甚至可以在 unix 时间戳中存储 负 秒吗?我的意思是它不是未签名的吗?
另外,如果我是正确的,那么我只能将日期存储在 1901. dec. 13 20:45:52 上,这可以通过任何方式在历史上进一步延长吗?
【问题讨论】:
-
Unix
time_t是一个有符号的 32 位整数,所以它可以回到 1901,正如你所指出的。你应该检查你的操作系统,许多已经将time_t扩展到 64 位,这给了你几千亿年的余地。
标签: time unix-timestamp