如果我在“ofstream fo”中添加“| ios :: app”来打开附加文件 模式,“fin”显示正在工作。
为什么会这样?我使用mingw4.8.1
Test1
答案 0 :(得分:1)
这是最接近你想要的正确代码
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
struct c {
int roll;
string name;
};
int main() {
c a, b;
ifstream fi("old.txt");
ofstream fo("new.txt");
cout << "Enter roll no. and name" << endl;
cin >> b.roll >> b.name;
while (fi >> a.roll >> a.name) {
if (b.roll < a.roll)
fo << b.roll << " " << b.name << endl;
else
fo << a.roll << " " << a.name << endl;
}
fi.close();
fo.close();
ifstream fin("new.txt");
while (fin >> a.roll >> a.name)
cout << a.roll << " " << a.name << endl;
fin.close();
return 0;
}
答案 1 :(得分:0)
据我了解,如果您使用ios :: app,您还必须指出ios :: out试试ios :: app | ios :: out | ios :: binary,看看是否有帮助。