我四年前写的一个程序,它的日期和时间如下:
get_the_date_and_time(char *string)
{
struct tm *now;
time_t lt;
lt = time(NULL);
now = localtime(<);
sprintf(string,asctime(now));
}
自从切换到夏令时后,它将返回一个小时的时间。
通过将系统日期更改为4月5日,我得到了正确的时间。
我们为所涉及的项目做了一个解决方案;这只是一个抬头。
我怀疑微软夏令时扩展的夏令时模式,如果没有破坏,有点受损。
答案 0 :(得分:3)
由于2005年的能源政策法案(made DST a month longer from 2007 onwards),您的系统并不知道美国夏令时的变化。
您使用的是哪个版本的Windows,是否让它与Windows Update保持同步?
编辑:此外,这是静态还是动态链接,并且自从应用所有补丁等后重建了吗?虽然我希望希望它从操作系统获取信息,但如果您静态链接,可能会将其中的一些信息添加到您的可执行文件中。 (伊克。)