为什么这个网站显示的currentMiliseconds值大于Integer.MAX_VALUE?
Why this website shows currentMiliseconds value greater than Integer.MAX_VALUE?
整数(32 位)的 MAX_VALUE
是,2_147_483_647
这是未来的最大时间限制(除非我们切换到 64 位整数)。
但是 this 网站显示当前时间(以毫秒为单位)等于 1_423_079_895_486
,并且显示正确的时间。
为什么该值比 Integer.MAX_VALUE
或 unix 时间的最大毫秒值大得多?
我是不是漏掉了一些基本的东西?
可能只是用64位来表示时间,以毫秒为单位。
这没什么了不起的。我输入的系统是 64 位 time_t
类型。
您是否假设 C 类型 int
和 time_t
必须具有相同的大小?他们没有。而一个代表毫秒的 32 位数字只能跨越不到 50 天的持续时间。
我们甚至不知道该网站是如何实现的;它很可能使用某种支持可变宽度整数的脚本语言。
整数(32 位)的 MAX_VALUE
是,2_147_483_647
这是未来的最大时间限制(除非我们切换到 64 位整数)。
但是 this 网站显示当前时间(以毫秒为单位)等于 1_423_079_895_486
,并且显示正确的时间。
为什么该值比 Integer.MAX_VALUE
或 unix 时间的最大毫秒值大得多?
我是不是漏掉了一些基本的东西?
可能只是用64位来表示时间,以毫秒为单位。
这没什么了不起的。我输入的系统是 64 位 time_t
类型。
您是否假设 C 类型 int
和 time_t
必须具有相同的大小?他们没有。而一个代表毫秒的 32 位数字只能跨越不到 50 天的持续时间。
我们甚至不知道该网站是如何实现的;它很可能使用某种支持可变宽度整数的脚本语言。