gmtime()
和localtime()
有什么区别? 我的需求: 我需要根据我所在的时区显示时间。 我有一段时间在POSIX(UTC)格式在几秒钟内。我有时区偏移(在UTC和我目前的地方之间)以秒为单位。 我要么加或减时区偏移量。 之后,我仍然有POSIX格式的时间。 为了将其转换为人类时间,我应该使用gmtime()
还是localtime()
。这是因为我也需要日期。 请说明。 谢谢!基于C++时区的时间
2
A
回答
0
gmtime
是UTC —协调世界时。它始终是 相同,无处不在。 localtime
是当地时间的解释, 由时区确定,以及夏令时是否生效或者是否为 。时区将由环境变量TZ
, 确定,用户应该将其设置为当地时区;如果未设置此变量 ,则会使用已定义的实施默认值:通常是机器所在的时区 。
1
您不应该自己提供时区偏移量,而应该通过环境提供实时时区指定。然后,localtime
会给你本地化的时间。 (gmtime
总是给你UTC)。假设你的代码看起来像
struct tm time_buffer, *localtime;
localtime = localtime_r(timep, &time_buffer);
printf("The hour is %i\n", localtime->tm_hour);
,然后调用通过程序:
$ TZ=Europe/Berlin my-program
,并得到柏林的地方时,正确调整为夏令时。
如果您绝对需要自己提供时区,请阅读man tzset
。
相关问题
- 1. C++基于时间
- 2. 基于时区的计算时间
- 3. 基于cron作业时间还是基于服务器时区?
- 4. 基于时间参考的Mysql分区
- 5. 获取基于时区和当前服务时间的时差
- 6. 基于时间的C#执行方法#
- 7. 基于员工的时间表C#
- 8. 基于时区的systimestamp和Oracle上的时间戳比较
- 9. 的Python:获得基于DST时区的时间戳
- 10. 如何在基于时区的codeigniter中回显时间?
- 11. 基于Unix时代的Oracle范围分区时间戳
- 12. 基于时区偏移量的MySql搜索时间戳
- 13. 钢轨时区 - 基于Web用户的locaton展会时间
- 14. 如何获得基于最新的时间时区
- 15. 基于一天中的时间更改时区
- 16. 基于时间戳
- 17. 基于时间戳
- 18. IPhone得到当前系统的时区从RubyOnRails时间格式基于时间
- 19. MySQL的日期时间获得所有的间隔基于区间小时
- 20. 基于时间的ID
- 21. 基于时间的旋转
- 22. 基于时间的数据
- 23. 基于时间的条件
- 24. Symfony /策略:基于时区格式化日期时间?
- 25. 基于用户时区在页面上更改时间
- 26. 基于服务器时区动态打印时间
- 27. C#获取带时区的时间戳
- 28. 添加基于时间
- 29. 基于机器时间
- 30. 结合基于时间戳