📅  最后修改于: 2023-12-03 14:52:15.565000             🧑  作者: Mango
在 C++ 中,可以使用不同的库来读取计算机的当前时间。下面将介绍两种常用的方法:使用 <ctime>
库和使用 <chrono>
库。
<ctime>
库<ctime>
库提供了许多关于时间和日期的函数和类型,其中包括读取当前时间的函数。
#include <iostream>
#include <ctime>
int main() {
// 获取当前时间
std::time_t currentTime = std::time(nullptr);
// 将当前时间转换为字符串
char buffer[80];
std::strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", std::localtime(¤tTime));
// 输出当前时间
std::cout << "当前时间:" << buffer << std::endl;
return 0;
}
上述代码中,我们先使用 std::time(nullptr)
函数获取当前的时间戳,然后使用 std::strftime
函数将时间戳转换为指定格式的字符串。
输出结果:
当前时间:2022-01-01 10:30:15
<chrono>
库<chrono>
库是 C++11 中引入的用于处理时间的库,相较于 <ctime>
库,<chrono>
库提供了更为现代化和类型安全的时间处理方式。
#include <iostream>
#include <chrono>
#include <ctime>
int main() {
// 获取当前时间点
auto currentTime = std::chrono::system_clock::now();
// 将当前时间转换为时间结构体
std::time_t currentTime_t = std::chrono::system_clock::to_time_t(currentTime);
// 将时间结构体转换为字符串
char buffer[80];
std::strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", std::localtime(¤tTime_t));
// 输出当前时间
std::cout << "当前时间:" << buffer << std::endl;
return 0;
}
上述代码中,我们使用 std::chrono::system_clock::now()
函数获取当前的时间点,然后使用 std::chrono::system_clock::to_time_t
函数将时间点转换为时间结构体,最后使用 std::strftime
函数将时间结构体转换为指定格式的字符串。
输出结果与前述相同:
当前时间:2022-01-01 10:30:15
以上就是在 C++ 中读取计算机当前时间的两种常用方法。根据实际需求和个人偏好选择合适的方法即可。