在我的C++程序中,我使用sprintf和fstream将输出数据保存在文件中,如下所示

#include <iostream>
#include <fstream>

char outname[50];
int n = 100;
sprintf(outname, "output_%s_%d.dat", "file", n);

ofstream fout;
fout.open(outname);

如何使用std::sstring而不是sprintf获取文件名,并使用std::ofstream打开该文件?在上面的代码中,文件名是outname,使用std::ofstream打开。

最佳答案

也许像这样?

#include <sstream>

std::stringstream outname;

outname << "output_file_" << n << ".dat";
...
ofstream fout;
fout.open( outname.str().c_str() );

09-26 06:57