Posts tagged ‘time_t’

32位linux系统time_t的2038年问题

今天在调试项目的时候发现一个很郁闷的问题,发现我们项目里面的时间表示到2040年以后就出错了

经过断点调试才发现原来是time_t溢出了。

这时我才注意到time_t是一个long int型的,在我们32位linux系统下只有4个字节,最大只能表示21亿的数据

这不是很郁闷么?21亿最大只能表示到2038年,一通百度后才发现原来普遍的32位linux系统都会有这个问题

有一种解决办法是更新到64位系统,他会扩展long int的字节数。

详情请移步:http://baike.baidu.com/view/1366867.htm

这样一来我们的项目至少目前来说只能用到2038年了。