Запутался местное время в Glib c (летнее время) - PullRequest
1 голос
/ 10 июля 2020

Я работаю на RT C и хочу использовать glib c, чтобы получить точное время. Я нахожусь в Сиднее, и летнее время наступает с первого воскресенья октября в 2 часа ночи и первого апреля в 2 часа ночи. Например, 5 апреля 2020 г., 1:59:59 -> 2:00:00 -> 2:59:59 -> 2:00:00 -> 2:59:59 -> 3:00:00 Я использую функции: time (), localtime (), gmtime (), чтобы проверить, действительно ли время ввода. Но я получил какой-то странный результат.

input=5/04/2020 1:34:56, t=1586010896
localtime=5/04/2020 1:34:56
gmtime=4/04/2020 14:34:56

input=5/04/2020 2:34:56, t=1586014496
localtime=5/04/2020 2:34:56
gmtime=4/04/2020 15:34:56

input=5/04/2020 3:34:56, t=1586018096
localtime=5/04/2020 2:34:56
gmtime=4/04/2020 16:34:56

input=5/04/2020 4:34:56, t=1586025296
localtime=5/04/2020 4:34:56
gmtime=4/04/2020 18:34:56

Ввод «5/04/2020 2:34:56» сбивает с толку, потому что есть два «2: 00: 00–2: 59: 59» ". Localtime () дало мне 2: 34: 56

, когда я ввел 5/04/2020 3:34:56, местное время должно быть 3:34:56. Но localtime () дал мне 2:34:56, и UT C время 17: xx: xx исчезло.

Не понимаю.

...