为什么Unix.tm_hour是真正的小时减一?

时间:2013-06-19 10:04:48

标签: ocaml

此处的当前时间为11:05,如果我Unix.gmtime (Unix.time()),则

{Unix.tm_sec = 53; Unix.tm_min = 4; Unix.tm_hour = 10; Unix.tm_mday = 19;
 Unix.tm_mon = 5; Unix.tm_year = 113; Unix.tm_wday = 3; Unix.tm_yday = 169;
 Unix.tm_isdst = false}

Unix.tm_hour=10,但它应该是11,对吗?

为什么真正的小时减1?

2 个答案:

答案 0 :(得分:5)

那是因为现在是夏天,UNIX仍在使用GMT(因此,一旦时钟前进,将会有一个小时)。

答案 1 :(得分:1)

您应该使用Unix.localtime()来获取当地时间,Unix.gmtime返回的时间将与您当地时间不同,具体取决于您所在的时区。