c++11 获取当前时间
时间: 2025-02-09 11:12:06 浏览: 77
### C++11 获取当前系统时间
在 C++11 及以上版本中,`std::chrono` 提供了一种现代的方式来处理时间和日期。通过 `std::chrono::system_clock` 类可以方便地获取当前系统时间并将其转换为可读格式。
```cpp
#include <iostream>
#include <chrono>
#include <ctime>
int main() {
// 获取当前系统时间点
auto now = std::chrono::system_clock::now();
// 转换为time_t类型以便于后续操作
std::time_t currentTime = std::chrono::system_clock::to_time_t(now);
// 打印当前时间到控制台
std::cout << "当前系统时间为: " << std::ctime(¤tTime);
return 0;
}
```
此代码片段展示了如何利用 `std::chrono::system_clock::now()` 函数来捕获当前时刻的时间戳,并通过 `std::ctime` 方法将该时间戳转化为人类易读的形式输出[^3]。
对于更精确的时间表示或进一步的操作需求,还可以考虑使用其他成员函数如 `std::put_time` 来定制化显示格式:
```cpp
#include <iomanip> // For put_time()
// ...
auto now = std::chrono::system_clock::now();
auto in_time_t = std::chrono::system_clock::to_time_t(now);
std::tm buf{};
localtime_s(&buf, &in_time_t); // Windows specific function for thread safety.
// On POSIX systems use localtime_r instead of localtime_s.
std::cout << "现在是:" << std::put_time(&buf, "%Y-%m-%d %H:%M") << '\n';
```
这段增强版的例子不仅能够打印完整的日期和时间信息,还允许指定特定的格式化模式,比如年份、月份、天数以及小时分钟等。
阅读全文
相关推荐


















