你能改变系统的纪元吗



Linux、Unix及其衍生产品使用Unix epoch,而Windows使用不同的epoch。

有可能改变系统使用的纪元吗?因此,像在该系统上获取当前时间戳这样的操作将返回自该特定时期以来的毫秒数?

如果可能(无论多么复杂(,查询系统以识别历元的最佳方式是什么?

您能更改系统上的epoch吗?

没有,但您可以使用像Glib这样的可移植框架。你可以下载然后学习GNUlibc的源代码(用于与时间相关的函数(。

您还可以记录和定义自己的约定,例如使用预处理器技巧(或GNUautoconf(

例如,决定并记录您的时间获取函数从2020年1月1日起返回一个double计数秒。

另请阅读C编译器(例如GCC(和预处理器(例如GNU cpp(以及操作系统(对于Linux,syscalls(2(和time(7(以及clock_gettime(2(…(的文档

Windows当然有一个不同但有文档记录的API。

PS。您也可以使用GPP或(2022年(RefPerSys生成一些C代码(您可以通过电子邮件basile@starynkevitch.net联系我(

注:。邪恶在于细节。注意闰秒。如果您的计算机已连接到Internet,则可能需要使用某些NTPD服务。

最新更新