C++ 标准库没有提供所谓的日期类型, 所以需要引入库ctime里面的strftime 来转换时间的格式
使用strftime 的是有在顶部引入#include <ctime>
strftime 的方法如下
size_t __cdecl strftime(char * __restrict__ _Buf,size_t _SizeInBytes,const char * __restrict__ _Format,const struct tm * __restrict__ _Tm);
第一个参数:__restrict__ _Buf是要生成的内容
第二个参数:_SizeInBytes被复制到 str 的最大字符数
第三个参数:__restrict__ _Format 是要转换的格式
第四个参数:__restrict__ _Tm ,需要转化格式的本体
demo练习
#include <iostream>
using namespace std;
#include <ctime>
int main()
{
struct tm *info;
char buffer[80];
time_t curtime;
time(&curtime);
info =localtime(&curtime);
cout << "本地日期和时间:" << ctime(&curtime) << endl;
strftime(buffer, 80, "%Y-%m-%d %H:%M:%S 今天是星期:%A", info);
cout<<"时间:"<<buffer<<endl;
return 0;
}
打印结果如下: