如何檢查今天是否是使用C/C++代碼的月份的第一個星期一?C/C++ - 檢查今天是否是本月的第一個星期一
使用Java和C#獲得更簡單(如下面的鏈接所示)。
任何人都可以幫助我實現這個使用C/C++。
c-sharp-how-can-i-check-if-today-is-the-first-monday-of-the-month
java check if date is first Sunday of the Month
如何檢查今天是否是使用C/C++代碼的月份的第一個星期一?C/C++ - 檢查今天是否是本月的第一個星期一
使用Java和C#獲得更簡單(如下面的鏈接所示)。
任何人都可以幫助我實現這個使用C/C++。
c-sharp-how-can-i-check-if-today-is-the-first-monday-of-the-month
java check if date is first Sunday of the Month
這應該是你在找什麼:
#include <iostream>
#include <ctime>
int main(){
std::time_t result = std::time(NULL);
const std::tm* t = std::localtime(&result);
if(t->tm_wday == 1 and t->tm_mday <= 7)
std::cout << "true" << std::endl;
else
std::cout << "false" << std::endl;
}
代碼已經過測試here。
使用的Boost.Date_Time gregorian。有一個功能day_clock::local_day()
,給你今天的日期。然後,您可以使用day()
成員函數查詢當月的哪一天以及day_of_week()
成員以查看它是否是星期一。其餘部分與您鏈接到的C#示例相同。
您可以使用time()和localtime()檢索struct time *
(我們將其命名爲tp
)。那麼今天是當月的第一個星期一,當且僅當tp->tm_mday <= 7
(它從1開始)和tp->tm_wday == 1
(0 =星期日等)
它不是。今天是星期三。 –
看看Boost中的date_time庫:www.boost.org – Bathsheba
你可以得到月份和星期幾的數字,如果(數字 - 7 <1和星期==星期一),那麼它是本月的第一個星期一 – Alexis