【问题标题】:how to display system current time + 3 minutes? [closed]如何显示系统当前时间+3分钟? [关闭]
【发布时间】:2014-10-17 15:31:18
【问题描述】:

在 C++ 中:

  • 如何显示系统当前时间(只有时间没有日期)?

  • 如何显示当前时间 + 3 分钟?

  • 我可以使用cout吗?

使用哪些库或函数?

【问题讨论】:

  • 我使用精灵魔法。您的里程可能会有所不同。
  • 这看起来像家庭作业
  • 这似乎没有进行任何研究。

标签: c++ ctime


【解决方案1】:

你可以试试这个例子(使用c++11 clang 3.6):

#include <iostream>
#include <iomanip>
#include <ctime>
#include <chrono>

int main()
{
    std::chrono::system_clock::time_point now = std::chrono::system_clock::now();
    std::time_t now_c = std::chrono::system_clock::to_time_t(now - std::chrono::hours(24));
    std::cout << std::put_time(std::localtime(&now_c), "%T") << std::endl;
    std::time_t later_c = std::chrono::system_clock::to_time_t(now - std::chrono::hours(24) + std::chrono::minutes(3));
    std::cout << std::put_time(std::localtime(&later_c), "%T") << std::endl;

    return 0;
}

只需使用std::chrono

【讨论】:

  • std::put_time 的支持很差,以至于 GCC 4.9 doesn't have it 和 clang 3.5.0 也不支持。所以除非你正在使用,什么,MSVS(?)这不会有太大帮助。
  • @LightnessRacesinOrbit 好吧,至少它在this reference中被描述为标准函数
  • @πάνταῥεῖ 是的,这是 C++11 的一个特性。我只是说它的支持很差,我支持这种说法。很高兴 cppreference.com 准确地符合标准的字面意思,我想如果您要开始作为 cppreference.com 贡献者的职业生涯,这将很有帮助……但是,对于所有其他 C++ 用途,没有那么多。
  • 我使用 Apple LLVM 6.0 版(clang-600.0.51)(基于 LLVM 3.5svn),它似乎运行良好。
猜你喜欢
  • 1970-01-01
  • 2018-07-27
  • 2019-07-13
  • 1970-01-01
  • 2019-08-10
  • 2017-09-24
  • 1970-01-01
  • 1970-01-01
  • 2011-06-15
相关资源
最近更新 更多