李珍宝的blog

李珍宝的BLOG

  IT博客 :: 首页 :: 联系 :: 聚合  :: 管理
  51 Posts :: 1 Stories :: 160 Comments :: 0 Trackbacks
由于C和C++中关于日期的数据结构的限制,如time_t 、CTime等,都只能表示到2038年1月18日,超过这个时间将无法表示,导致程序出现不可预料的问题。
而这两类数据类型在现有程序中被大量使用,没有引起广泛注意。
解决办法是采用替代的数据类型,如使用 __time64_t 、COleDateTime 或boost中的时间等第三方类库。
另:从VS2005(VC8)开始 time_t和CTime默认采用64位空间来保存时间,解决了2038年问题。
采用VC6开发的软件,需要及时移植到VC8或更高版本重新编译。
posted on 2007-06-29 17:57 李珍宝 阅读(1761) 评论(1)  编辑 收藏 引用 所属分类: 软件

Feedback

# re: 使用C和C++的开发人员警惕2038年问题。 2007-07-02 13:15 cnsworder
为什么?  回复  更多评论
  

只有注册用户登录后才能发表评论。