我在这里的第一篇文章。初学者C ++编码器,似乎无法弄清楚该错误。我正在尝试在单独的行上将256个数字打印到输出文件。这似乎在大多数时间都有效。但是,当所有256个数字均为0时,它将在同一行上打印256个ਰ字符。如果我在同一行上打印2 0,则效果很好,而如果删除下一行,则效果也很好。我尝试冲洗ostream,但这没有帮助。我认为这可能与unsigned int有关,但是强制转换和to_string()也无济于事。该代码可以完美地打印到终端,而不是文件。任何帮助将不胜感激!
vector<unsigned int> freqs(256);
ofstream outfile(outFileName);
for (int i = 0; i < 256; i++) {
outfile << freqs[i];
outfile << '\n';
}
尝试使用endl
运算符。
#include <fstream>
using namespace std;
int main()
{
vector<unsigned int> freqs(256);
ofstream fileToWriteTo;
fileToWriteTo.open("file.txt");
for (int i = 0; i < 256; i++)
{
fileToWriteTo << freqs.at(i) << endl;
}
fileToWriteTo.close();
}