C++ 错误的文件输出,C++;
我正试图将一些数字输出到一个文件中。以下是方法:C++ 错误的文件输出,C++;,c++,output,C++,Output,我正试图将一些数字输出到一个文件中。以下是方法: std::ofstream out; out.open("%path%/perm.out"); if (Pos == N) { for (i = 0; i < N; i++) out << a[i] << " "; out << "\n"; return; } 然而,我得到的是: 3 2 1 但是,如果我尝试使用std::cout将其输出到控制台,我会得到预期
std::ofstream out;
out.open("%path%/perm.out");
if (Pos == N)
{
for (i = 0; i < N; i++)
out << a[i] << " ";
out << "\n";
return;
}
然而,我得到的是:
3 2 1
但是,如果我尝试使用std::cout将其输出到控制台,我会得到预期的结果。为什么会发生这种情况?如何解决此问题?您需要以附加模式打开文件
std::ofstream myfile;
myfile.open ("example.txt", ios::app);
您需要以追加模式打开文件
std::ofstream myfile;
myfile.open ("example.txt", ios::app);
由于问题不清楚,我希望您显示的代码在函数中。
问题可能是您正在一次又一次地重写同一个文件,所以最后您只剩下最后一行
3 2 1
请输入更多代码,以便任何人都能理解问题所在。由于问题不清楚,我希望您显示的代码在函数中。
问题可能是您正在一次又一次地重写同一个文件,所以最后您只剩下最后一行
3 2 1
请输入更多代码,以便任何人都能理解问题所在。是否可以显示更多代码?仅从这一部分来看,问题似乎并不明显。@benson lin我当然会,但我不知道该发布什么!代码中没有其他输出。剩下的就是计算置换和主元素的算法。你能试着创建一个新的算法并展示给我们吗?还有,你发布的代码只打印一行数据。对于stdout来说这很好,但是每次都会重写一个文件。是否可以显示更多的代码?仅从这一部分来看,问题似乎并不明显。@benson lin我当然会,但我不知道该发布什么!代码中没有其他输出。剩下的就是计算置换和主元素的算法。你能试着创建一个新的算法并展示给我们吗?还有,你发布的代码只打印一行数据。对于stdout来说这很好,但是每次都会重写一个文件。