c++ - C++ 中上周一的时间戳

标签 c++ datetime time

我需要使用 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/

相关文章:

c++ - 关于 if block 的情况的排他性

c++ - 来自 make 的 fork_copy 错误

r - 如何计算每个组(学生契约(Contract))的日期时间之间的时间差?

cocoa - 确定 cocoa 中的毫秒时间间隔

python时间间隔重叠持续时间

python - 我如何选择 pandas 中时间范围的数据

c++ - CMake 错误 : Could not create named generator Visual Studio 15 2017 Win64-T

postgresql - 当我想按日期过滤时,ISO8601 是 PostgreSQL jsonb 的最佳日期格式吗?

java - 计算Java中日期的差异

c++ - 为什么没有 <STLfwd> header ,它的不存在可以被视为缺陷吗?