XD灬 2015-03-10 14:48 采纳率: 100%
浏览 3276
已采纳

vs2013 fstream 无法打开文件

include

//# include

include

using namespace std;

class student
{
public:
int num;
char name[20];
float score;
};
int main()
{
student std[5] = { 1001, "Li", 85, 1002, "Fun", 97.5, 1004, "Wang", 54, 1006, "Tan", 76.5, 1010, "Ling", 96 };
fstream iofile;
iofile.open("stud.dat", ios::in|ios::out|ios::binary);
if (!iofile)
{
cerr << "Error!" << endl;
exit(1);
}
for (int i = 0; i < 5; i++)
{
iofile.write((char *)&std[i], sizeof(std[i]));
}
student stud[5];
for (int i = 0; i < 5; i = i + 2)
{
iofile.seekg(i * sizeof(std[i]), ios::beg);
iofile.read((char *)&stud[i / 2], sizeof(stud[0]));
cout << stud[i / 2].num << ' ' << stud[i / 2].name << ' ' << stud[i / 2].score << endl;
}
cout << endl;
stud[2].num = 1012;
strcpy_s(stud[2].name, 20, "Wu");
stud[2].score = 60;
iofile.seekp(2 * sizeof(stud[0]), ios::beg);
iofile.write((char *)&std[2], sizeof(std[2]));
iofile.seekg(0, ios::beg);
for (int i = 0; i < 5; i++)
{
iofile.read((char *)&stud[i], sizeof(stud[i]));
cout << stud[i].num << ' ' << stud[i].name << ' ' << stud[i].score << endl;
}
iofile.close();
return 0;
}

输出的是Error,求解??看不出什么错误!

  • 写回答

4条回答 默认 最新

查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料