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

Jac*_*ale -2 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}
Run Code Online (Sandbox Code Playgroud)

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

为什么真正的小时减一?

Bat*_*eba 5

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