当前时间日期,c++标准库
示例代码
#include <iostream>
#include <chrono>
int main()
{
auto now = std::chrono::system_clock::now();
std::time_t t = std::chrono::system_clock::to_time_t(now);
std::tm* now_tm = std::localtime(&t);
std::cout << "年: " << now_tm->tm_year + 1900 << std::endl;
std::cout << "月: " << now_tm->tm_mon << std::endl;
std::cout << "日: " << now_tm->tm_mday << std::endl;
std::cout << "时: " << now_tm->tm_hour << std::endl;
std::cout << "分: " << now_tm->tm_min << std::endl;
std::cout << "秒: " << now_tm->tm_sec << std::endl;
char buffer[80];
std::strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", now_tm);
std::cout << "当前时间:" << buffer << std::endl;
int year = 2023;
int mon = 12;
int mday = 21;
int hour = 10;
int min = 12;
int sec = 15;
std::tm mk_time;
mk_time.tm_year = year - 1900;
mk_time.tm_mon = mon-1;
mk_time.tm_mday = mday;
mk_time.tm_hour = hour;
mk_time.tm_min = min;
mk_time.tm_sec = sec;
//cut.tm_isdst = 0;cut.tm_wday = 0;cut.tm_yday = 0;
std::time_t make_t = std::mktime(&mk_time);
std::tm* make_tm = std::localtime(&make_t);
std::strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", now_tm);
std::cout << "转换时间:" << buffer << std::endl;
return 0;
}
运行结果