【现象】
在windows环境下开启关闭夏令时之后,调用第三方库获取系统时间会不正确。
【解决】
在windowns环境下可使用Windows API:
#include < windows.h>
#include < stdio.h>
int main( void )
{
SYSTEMTIME sys;
GetLocalTime( &sys );
printf( "%4d/%02d/%02d %02d:%02d:%02d.%03d 星期%1d\n",
sys.wYear,sys.wMonth,sys.wDay,sys.wHour,sys.wMinute,
sys.wSecond,sys.wMilliseconds,sys.wDayOfWeek);
return 0;
}
如果要考虑跨平台,需自己封装接口。
参考:
https://tnie.github.io/2016/11/03/getTime/