📅  最后修改于: 2023-12-03 15:23:07.498000             🧑  作者: Mango
在 C++ 中,我们可以使用标准库中的 chrono
和 ctime
头文件来获取当前日期。具体实现方式如下:
#include <chrono>
#include <ctime>
#include <iostream>
int main() {
// 获取当前时间
auto current_time = std::chrono::system_clock::now();
// 转换为时间类型
std::time_t current_time_t = std::chrono::system_clock::to_time_t(current_time);
// 转换为本地时间
std::tm* local_time = std::localtime(¤t_time_t);
// 输出日期
std::cout << "当前日期:" << local_time->tm_year + 1900
<< "年" << local_time->tm_mon + 1 << "月"
<< local_time->tm_mday << "日" << std::endl;
return 0;
}
以上代码输出的结果为:
当前日期:2021年7月1日
对以上代码进行分析:
std::chrono::system_clock::now()
获取当前时间,类型为 std::chrono::time_point
。std::chrono::system_clock::to_time_t
将时间转换为 std::time_t
类型。std::localtime
将时间转换为本地时间,类型为 std::tm*
。以上代码只是最基本的获取当前日期的方法,还有其他更加高级和灵活的方式,例如使用第三方库 Boost
来处理时间。但在使用过程中需要注意潜在的时区问题。