linux 调用localtime()前设置时区则可以得到想要时区的时间

//      setenv("TZ", "America/New_York", 1);

//      setenv("TZ", "Europe/Moscow", 1);

setenv("TZ", "Asia/Shanghai", 1);

time_t t;

time(&t);

ptm = localtime(&t);

strftime(str_datetime, sizeof(str_datetime), "%Y-%m-%d %H:%M:%S %z %Z", ptm);

printf("%s,    是否夏令时: %d -------------\n", str_datetime, ptm->tm_isdst);

extern char *tzname[2];

extern long timezone;

extern int daylight;

printf("tzname=%s, %s, daylight=%d,timezone=%ld \n", tzname[0], tzname[1], daylight, timezone);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容