c++获取当前时间 微秒
时间: 2023-11-19 07:57:15 浏览: 292
使用C++11新加入std::chrono库可以获取精确到微秒的当前时间。具体实现方法如下:
```c++
#include <chrono>
#include <ctime>
using namespace std::chrono;
system_clock::time_point time_point_now = system_clock::now(); // 获取当前时间点
system_clock::duration duration_since_epoch = time_point_now.time_since_epoch(); // 从1970-01-01 00:00:00到当前时间点的时长
time_t microseconds_since_epoch = duration_cast<microseconds>(duration_since_epoch).count(); // 将时长转换为微秒数
time_t seconds_since_epoch = microseconds_since_epoch / 1000000; // 将时长转换为秒数
std::tm current_time = *std::localtime(&seconds_since_epoch); // 获取当前时间(精确到秒)
time_t tm_microsec = microseconds_since_epoch % 1000000; // 当前时间的微秒数
```
其中,time_point_now表示当前时间点,duration_since_epoch表示从1970-01-01 00:00:00到当前时间点的时长,microseconds_since_epoch表示将时长转换为微秒数,seconds_since_epoch表示将时长转换为秒数,current_time表示当前时间(精确到秒),tm_microsec表示当前时间的微秒数。
阅读全文