添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
坏坏的柿子  ·  mktime、_mktime32、_mkti ...·  2 月前    · 
傻傻的刺猬  ·  Linux C ...·  2 月前    · 
才高八斗的啄木鸟  ·  Apache POI XWPF ...·  5 天前    · 
爱笑的蜡烛  ·  page.DrawText and ...·  6 月前    · 
可爱的小蝌蚪  ·  NodeJS | Jenkins plugin·  8 月前    · 
温暖的小马驹  ·  除了玩偶姐,还有 3 ...·  10 月前    · 
在跟踪一个bug时发现,mktime与localtime转换的时间格式时间会相差一个小时。
原来在不同机器上会出现tm_isdst默认值不同。也就是说最终,不同tm结构体中的tm_isdst赋值,mktime算出来的时候会有一个小时的差别,这时候需要我们指定tm_isdst值。
#include <stdio.h>#include <time.h>int main(void){        tm maskTimetm;        maskTimetm.tm_year= (2000-1900);        maskTimetm.tm_mon = (1-1);         maskTimetm.tm_mday= 1;        maskTimetm.tm_hour= 0;        maskTimetm.tm_min = 0;        maskTimetm.tm_sec = 0;        maskTimetm.tm_isdst = -1;        time_t maskTime = mktime(&maskTimetm);        return 0;}mktime是用于生成指定的本地时刻的,多数情况下我们都会忽略设置tm_isdst,.不过实际应用中发现,不同值会有不同影响.    下面是测试结果:  tm中tm_isdst分别为0,1,-1对mktime结果影响会有一个小时的误差。 tm_isdst = -1(由系统判断)  tm_isdst = 0(指定为非夏令时)  tm_isdst = 1(指定为夏令时)