如何通过输入日期获得哪一天?

输入日期示例:15-08-2012

我怎么知道是星期一、星期二还是哪一天使用 C++。

我试图从一个月的可用日期中省略周末,所以如果我输入例如 2012 年 8 月的月份,我想检查哪一天是星期六,哪一天是星期日,所以我可以从可用日期中省略它对于我的程序。

我尝试获取一个月天数的代码:

if (month == 4 || month == 6 || month == 9 || month == 11)
{
    maxDay = 30;
}
else if (month == 2)
//{
//  bool isLeapYear = (year% 4 == 0 && year % 100 != 0) || (year % 400 == 0);
//  if (isLeapYear)
//  {
//   maxDay = 29;
//  }
//else
{
    maxDay = 28;
}

我想知道的下一件事是在那个月,哪一天是周末,所以我可以从结果中省略它。

最佳答案

我会使用 mktime() 。给定日、月和年,填写 tm ,然后
在其上调用 mktime:

tm timeStruct = {};
timeStruct.tm_year = year - 1900;
timeStruct.tm_mon = month - 1;
timeStruct.tm_mday = day;
timeStruct.tm_hour = 12;    //  To avoid any doubts about summer time, etc.
mktime( &timeStruct );
return timeStruct.tm_wday;  //  0...6 for Sunday...Saturday

关于C++ 通过输入日期获取哪一天,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11972368/

10-11 16:53