linux c++ 获取当前时间,精确到us
时间: 2025-01-04 22:38:35 浏览: 5
在Linux C++中,你可以使用C++标准库中的`chrono`库来获取当前时间,精确到微秒(us)。下面是一个简单的示例代码:
```cpp
#include <iostream>
#include <chrono>
int main() {
// 获取当前时间点
auto now = std::chrono::system_clock::now();
// 将时间点转换为时间_t类型,以便于进行输出
std::time_t now_time = std::chrono::system_clock::to_time_t(now);
// 输出当前时间,精确到微秒
std::cout << "当前时间:" << std::ctime(&now_time);
// 获取微秒级别的时间间隔
auto duration = std::chrono::duration_cast<std::chrono::microseconds>(now - now_time);
// 输出微秒级别的时间间隔
std::cout << "微秒级别的时间间隔:" << duration.count() << "微秒" << std::endl;
return 0;
}
```
上述代码使用了`std::chrono::system_clock`来获取当前时间点,并使用`std::ctime`函数将其转换为可读的格式进行输出。然后,通过`duration_cast`函数获取微秒级别的时间间隔,并使用`count()`方法获取微秒数进行输出。
请注意,由于时间戳的精度限制,实际输出可能会受到系统时钟精度的影响。如果需要更高的精度,可以考虑使用更精确的时间源,如NTP(网络时间协议)或其他方法。
阅读全文