一般epoch(用微秒表示)转成年,都会是这样year = epoch / 1000 / 1000 / 60 / 60 / 24 / 365可是闰年有366天,那么除以365不会造成不准确么?我这里只是举一个例子,闰年到底会对时间转换的哪一步有影响,是epoch转换成比天小的单位不准确么?
2 回答
温温酱
TA贡献1752条经验 获得超4个赞
这样当然是有问题的,不知道你这个“一般是这样做的”的结论是从哪里来的
不光是闰年,还要考虑到时区、夏令时等等问题,显然这种直接写死的做法是不正确的
time库和os提供的各类时间函数为什么不用呢?为什么非要自己写这样一个“聪明”的算法呢?
下面的做法在我看来才是“一般的”不是吗?
#include<stdio.h>#include<time.h>int main(){ time_t ts = time(NULL); tm* time_obj = localtime(&ts); printf("%d", time_obj->tm_year + 1900); }
- 2 回答
- 0 关注
- 710 浏览
添加回答
举报
0/150
提交
取消