• 请不要在回答技术问题时复制粘贴 AI 生成的内容
DinoStray
V2EX  ›  程序员

2023 年, 操作系统的 time_t 类型 就溢出了, 目前有对此做什么么?

  •  
  •   DinoStray · Feb 6, 2021 · 4989 views
    This topic created in 2104 days ago, the information mentioned may be changed or developed.
    21 replies  •  2021-02-07 15:55:14 +08:00
    mcoo1997
    mcoo1997
    Feb 6, 2021 via Android
    1
    尽量不要过到 2023 年
    pursuer
    pursuer
    Feb 6, 2021
    2
    是 2038 年 1 月吧
    ho121
    ho121
    Feb 6, 2021 via Android
    3
    大部分系统应该切换到 64 位了吧
    DinoStray
    DinoStray
    OP
    Feb 6, 2021
    4
    @pursuer 对, 我打错了
    whenov
    whenov
    Feb 6, 2021 via iPhone
    5
    使用 time_t 的话已经与具体实现解耦了,只要及时更新操作系统和编译器应该不会有大问题
    Jirajine
    Jirajine
    Feb 6, 2021 via Android
    6
    到那个时候估计现在的主流操作系统都更新换代了。
    elfive
    elfive
    Feb 6, 2021 via iPhone
    7
    基本上除了少数用到了类似于 printf 函数(主要是%d,%ld 这些),以及一些强制转字节流等操作的以外(可能涉及到序列化存取),几乎都只需要重新用 64 位编译器编译一下就能解决……
    mepwang
    mepwang
    Feb 6, 2021 via iPhone
    8
    @ho121 切 64 位不影响已有系统吧,并且一般 64 位 c 语言只有 long long 整数和指针,还有明确指定是 64 位的数据类型,是 64 位的
    BrettD
    BrettD
    Feb 6, 2021 via iPhone
    9
    @ho121 问题在于虽然系统是 64 位,为了兼容旧程序,time_t 还是 32 位整数
    ho121
    ho121
    Feb 6, 2021 via Android
    10
    @BrettD 记得 64 位编译出来的 sizeof time_t 是 8
    wty
    wty
    Feb 6, 2021 via Android
    11
    c 库已经换成 64 位了,写 time_t 默认 64 位。time 函数什么的都会被重新定义到 64 位版本上去。新编译的程序应该大多没啥问题
    learningman
    learningman
    Feb 6, 2021
    12
    time_t 本来就是个宏,重新指定到 int_64 呗
    nightwitch
    nightwitch
    Feb 6, 2021
    13
    systemcall
    systemcall
    Feb 6, 2021❤️1
    14
    得看谭浩强和廖雪峰打不打算拯救众生
    BrettD
    BrettD
    Feb 6, 2021
    15
    @ho121 哦好吧我记忆过时了,我记得几年前看到帖子说为了维持 ABI 兼容性导致 time_t 仍然 32 位。
    alazysun
    alazysun
    Feb 6, 2021
    16
    那时候 32 位也应该取缔了把
    fiveelementgid
    fiveelementgid
    Feb 7, 2021 via Android
    17
    32 位已经退役了吧
    jzmws
    jzmws
    Feb 7, 2021
    18
    这个和 MySQL timestamp 是一样的把?
    laucenmi
    laucenmi
    Feb 7, 2021
    19
    还有好多设备是 32 位的...
    momo1999
    momo1999
    Feb 7, 2021
    20
    typedef __time64_t time_t;
    iawes
    iawes
    Feb 7, 2021
    21
    之前毁灭地球就行了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1960 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 57ms · UTC 15:25 · PVG 23:25 · LAX 07:25 · JFK 10:25
    ♥ Do have faith in what you're doing.