如何在C++中获取当前时间和日期?
C++与C共享其日期/时间函数。对于C ++程序员来说,tm结构可能是最容易使用的 - 以下内容可打印今天的日期:
#include#include int main() { std::time_t t = std::time(0); // get time now std::tm* now = std::localtime(&t); std::cout << (now->tm_year + 1900) << '-' << (now->tm_mon + 1) << '-' << now->tm_mday << "\n"; }
从C++ 11开始,可以使用std::chrono::system_clock::now()
例子(从en.cppreference.com复制):
#include#include #include int main() { auto start = std::chrono::system_clock::now(); // Some computation here auto end = std::chrono::system_clock::now(); std::chrono::duration elapsed_seconds = end-start; std::time_t end_time = std::chrono::system_clock::to_time_t(end); std::cout << "finished computation at " << std::ctime(&end_time) << "elapsed time: " << elapsed_seconds.count() << "s" << std::endl; }
这个应该会打印出如下内容:
finished computation at Mon Oct 2 00:59:08 2017 elapsed time: 1.88232s