c mktime возвращает неправильные значения для wday и yday
Я пытался использовать mktime, чтобы узнать, какой день недели для какой-либо даты, которую я использую. Но он продолжает возвращать неправильные значения для wday и yday. Мне плевать на день, но я не уверен, в чем проблема. Я просматривал код несколько раз, искал в Интернете и т. Д., И, наконец, у меня закончились идеи о том, что я могу делать неправильно.
Вот картинка кода и значений после вызова mktime. Если бы кто-то мог помочь мне, я был бы благодарен.
Спасибо
2 ответа
Решение
Согласно документации, tm_mon
поле основано на 0, поэтому 1 фактически февраль.
tm_mday
поле, однако, на основе 1. Раздражает, что они разные.
int tm_mon; /* month, range 0 to 11 */
Значение 1
стоит на февраль нужно поменять на 0
,