文件IO中的可移植性问题



当我在linux(g++)中编译和运行它时,以下代码没有任何效果。这是便携性问题吗?我怎样才能让它工作?

ofstream myfile;
myfile.open("myfile.txt", fstream::in | fstream::out | fstream::app);

std::ofstream输出流。根据定义,它不能输入数据。因此,将fstream::in作为标志是错误的。

如果您想要一个可以输入输出的文件流,请使用std::fstream

诚然,这可能不是你问题的根源。但这是错误的。

内容无法写入文件的最常见原因是,完成后忘记关闭流:程序退出前的某个位置的myfile.close();。这会刷新缓冲区,并确保所有内容都实际写入到文件中,并且不会在过程中处于任何缓存中。d

最新更新