Чтобы найти день (число) для заданной даты, я написал ниже код, используя <ctime>
:Как найти день недели `tm_wday` с определенной даты?
tm time {ANY_SECOND, ANY_MINUTE, ANY_HOUR, 21, 7, 2015 - 1900};
mktime(&time); // today's date
PRINT(time.tm_wday); // prints 5 instead of 2 for Tuesday
Согласно документации, tm_wday
может содержать значение среди [0-6]
, где 0 это воскресенье. Следовательно, во вторник (сегодня) он должен печатать 2; но это prints 5.
Фактически tm_wday
дает согласованные результаты, но с разницей в 3 дня.
Что здесь не так?
Выберите язык. C или C++ и придерживаться его. Не меняйте свой код после получения ответа. Обычно это делает ответ недействительным. –
@SouravGhosh, я не вижу необходимости придерживаться только 1 из них. '' и '' доступны в C и C++ соответственно. Наличие обоих меток дает лучшую видимость. Код не изменяется, только код 'std ::' удаляется из кода, чтобы избежать некорректности с C. Это не имеет никакого значения. –
iammilind
Ваш код находится в 'C'. Зачем тогда тэг 'C++'? –