最近,在将一段代码添加进已有的MFC程序中时,发现:Release x64环境下代码无法在控制台打印变量信息,于是以写文件的方式来观察调试程序时输出的变量信息。
C++中往文本文件中写内容是利用ofstream类,但是我想以系统时间为文本文件名来记录每次的调试信息,例如:2022-08-26 14-45-25.txt
示例代码如下
#include <iostream>
#include <fstream>
#include "windows.h"
using namespace std;
SYSTEMTIME sys;
int main()
{
ofstream ofs;
string s = "day day up";
char fileName[256];
GetLocalTime(&sys);
sprintf_s(fileName, "./log/%02d-%02d-%02d %02d-%02d-%02d.txt", sys.wYear, sys.wMonth, sys.wDay, sys.wHour, sys.wMinute, sys.wSecond);
ofs.open(fileName, ios::out);
ofs << "today's log : " << endl;
ofs << s << endl;
ofs.close();
return 0;
}
输出结果


本文介绍了一种在C++中使用系统时间作为文件名的方法来创建日志文件的技术。通过这种方式,可以方便地按时间顺序组织和检索调试信息。
4594

被折叠的 条评论
为什么被折叠?



