1
mcoo1997 2021-02-06 14:07:47 +08:00 via Android
尽量不要过到 2023 年
|
2
pursuer 2021-02-06 14:10:33 +08:00
是 2038 年 1 月吧
|
3
ho121 2021-02-06 14:13:26 +08:00 via Android
大部分系统应该切换到 64 位了吧
|
5
whenov 2021-02-06 14:19:03 +08:00 via iPhone
使用 time_t 的话已经与具体实现解耦了,只要及时更新操作系统和编译器应该不会有大问题
|
6
Jirajine 2021-02-06 14:20:20 +08:00 via Android
到那个时候估计现在的主流操作系统都更新换代了。
|
7
elfive 2021-02-06 14:21:13 +08:00 via iPhone
基本上除了少数用到了类似于 printf 函数(主要是%d,%ld 这些),以及一些强制转字节流等操作的以外(可能涉及到序列化存取),几乎都只需要重新用 64 位编译器编译一下就能解决……
|
8
mepwang 2021-02-06 14:22:02 +08:00 via iPhone
@ho121 切 64 位不影响已有系统吧,并且一般 64 位 c 语言只有 long long 整数和指针,还有明确指定是 64 位的数据类型,是 64 位的
|
11
wty 2021-02-06 14:51:23 +08:00 via Android
c 库已经换成 64 位了,写 time_t 默认 64 位。time 函数什么的都会被重新定义到 64 位版本上去。新编译的程序应该大多没啥问题
|
12
learningman 2021-02-06 18:42:57 +08:00
time_t 本来就是个宏,重新指定到 int_64 呗
|
13
nightwitch 2021-02-06 21:14:24 +08:00
https://code.woboq.org/userspace/glibc/posix/bits/types.h.html#_M/__SQUAD_TYPE
glibc 的 time_t 已经换成 64 位很久了 |
14
systemcall 2021-02-06 21:20:47 +08:00 1
得看谭浩强和廖雪峰打不打算拯救众生
|
16
alazysun 2021-02-06 23:49:13 +08:00
那时候 32 位也应该取缔了把
|
17
fiveelementgid 2021-02-07 00:27:38 +08:00 via Android
32 位已经退役了吧
|
18
jzmws 2021-02-07 08:59:48 +08:00
这个和 MySQL timestamp 是一样的把?
|
19
laucenmi 2021-02-07 09:18:50 +08:00
还有好多设备是 32 位的...
|
20
shuax 2021-02-07 10:29:59 +08:00
typedef __time64_t time_t;
|
21
iawes 2021-02-07 15:55:14 +08:00
之前毁灭地球就行了
|