我需要使用 C++ 获取本地时区上周一开始 (00:00) 的时间戳 (time_t)。有什么简单的方法可以只使用标准 C++ 而不使用第三方库吗?
最佳答案
为什么没有第三方库?使用 Howard Hinnant's header only date library 会容易得多这应该在未来的标准中可用:
#include "date.h"
#include <iostream>
int main()
{
using namespace date;
using namespace std::chrono;
//auto now = sys_days(2018_y/August/12);
auto now = floor<days>(system_clock::now());
date::weekday day = weekday{ now };
now -= day - Monday;
std::cout << year_month_day(now) << "\n";
time_t time = now.time_since_epoch().count();
std::cout << time << "\n";
}
关于c++ - C++ 中上周一的时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51854226/