我正在Fedora FC3 OS上编写一个C应用程序。它通过创建指向相应时区文件的链接来更改时区,然后通过mktime()
API将其转换为自纪元以来的时间来设置时间(由用户输入),并将其设置为settimeofday()
。
我正面临着像America / New_York这样有DST的时区问题。例如,如果我使用任何America / New_York时区将时间设置为5:00,请致电gettimeofday()
并使用localtime_r()
进行转换,即可获得6:00。我怀疑是否正在应用一些DST校正?有任何线索如何避免这种情况?