c++17 chrono 库

记录下 chrono 库中常用的方法。

1. 获取格式化的当前日期

本质还是 C 那一套:用 struct tm* ctime(struct time_t*) 接口,而在 C++ 中则是使用 char* ctime(const std::time_t* time); 接口。

可以使用 std::time_t std::chrono::system_clock::to_time_t(const time_point& t) 接口获取 std::time_t,而 time_point 则可以用 std::chrono::system_clock::now() 接口获取。

代码如下:

1
2
3
4
5
6
7
8
9
#include <iostream>
#include <chrono>

int main()
{
auto t = std::chrono::system_clock::now();
std::time_t today = std::chrono::system_clock::to_time_t(t);
cout << std::ctime(&today) << endl;
}