[問題] DST時間有問題
要計算DST的時間(+1小時)
於是先取現在的時間time_t
再把它+3600秒
Time2印出來發現跟Time1一樣,沒有加3600秒
可是我用另外一個time_t的變數 (clock_dst)
去等於clock,再去印時間(Time3)
發現有加一個小時
很好奇為什麼Time2的時間沒有多一小時
而用另外一個變數去等於時,就有多一個小時了!?
謝謝大家
void test()
{
time_t clock;
time(&clock);
/* DST */
DEBUG("Time1: %s", ctime(&clock));
clock = clock + 3600;
DEBUG("Time2: %s", ctime(&clock));
time_t clock_dst;
clock_dst = clock;
DEBUG("Time3(%d): %s", (int)clock_dst, ctime(&clock_dst));
}
結果如下:
Time1: Fri Feb 7 19:43:39 2014
Time2: Fri Feb 7 19:43:39 2014
Time3(1391777019): Fri Feb 7 20:43:39 2014
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.17.31
→
02/07 20:22, , 1F
02/07 20:22, 1F
→
02/07 20:22, , 2F
02/07 20:22, 2F
推
02/07 23:47, , 3F
02/07 23:47, 3F
推
02/07 23:49, , 4F
02/07 23:49, 4F
→
02/07 23:50, , 5F
02/07 23:50, 5F
推
02/08 00:22, , 6F
02/08 00:22, 6F
推
02/08 00:27, , 7F
02/08 00:27, 7F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章