c++ - 如何使用 std::chrono 调用本地时间和本地时间加 X 小时

标签 c++ datetime

<分区>

我一直在寻找一种使用本地时间在 C++ 中计算 future 日历日期的方法,但到目前为止还没有成功。

基本上我想在当前时间(以 MM-DD-YYYY 格式打印并由计算机检索)中添加 3 天(对于标准交付)或添加一天(对于隔夜交付)。如何在 C++ 中 [无需算法] 简单地做到这一点?

输出看起来像这样:

Would you like overnight delivery [Y/N]? Y

Today's Date: 03-25-2017
Your Expected Arrival Date: 03-26-2017

Would you like overnight delivery [N/Y]? N

Today's Date: 03-25-2017
Your Expected Arrival Date: 03-28-2017

最佳答案

以下是如何用不到 8 行代码完成此操作。使用 hours 指定您 future 想去的确切时间量。格式非常粗俗,像 C 一样没有吸引力。不要忘记指定每个“现在”...加急与常规运输不同!

chrono::system_clock::time_point now = chrono::system_clock::now();
time_t now_c = chrono::system_clock::to_time_t(now + chrono::hours(24));
cout << "Overnight Shipping Expected Arrival Date: " << put_time(localtime(&now_c), "%F") << '\n';

chrono::system_clock::time_point now2 = chrono::system_clock::now();
time_t now2_c = chrono::system_clock::to_time_t(now2 + chrono::hours(72));
cout << "Standard Shipping Expected Arrival Date: " << put_time(localtime(&now2_c), "%F") << '\n';

关于c++ - 如何使用 std::chrono 调用本地时间和本地时间加 X 小时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42323823/

相关文章:

python - 将 python datetime 对象格式化为参数

sql - 获取给定开始日期和结束日期的以周为间隔的所有日期

c# - 将 C# 日期时间对象转换为 Excel 日期格式

C++11 与不同类型的随机分布共享相同的函数

c++ - 是否可以在运行时迭代 mpl::vector 而不实例化 vector 中的类型?

c++ - 与 C++ 函数中的参数混淆?

java - 使用 Java 增强 C++ Eclipse

c++ - 为什么 std::variant 使用开始和结束迭代器进行编译?

mysql - 使用时区 MySQL 解析日期

python - 在 Python/Pandas 中确定一天是否是工作日