返回信息流我今天看谭浩强的C++遇到这样一个问题:
我想把五名员工的信息向磁盘文件输出时总是open error!我觉得程序没问题,然后把习题集上的答案原封不动的敲上去,结果还是open error!怎么回事?我把代码精简了下,如下:
#include<iostream>
#include<fstream>
#include<stdlib.h>
using namespace std;
struct staff
{
int number;
char name[20];
int age;
float wage;
};
int main()
{
staff staf[5]={1001,"Wang",31,1543.8,1002,"Zhang",27,2010.9,1018,"Liu",
32,1768.3,1020,"Chen",29,1700.1,1033,"Wu",33,1920.5};
fstream iofile("staff.dat",ios::in|ios::out|ios::binary);
if(!iofile)
{
cerr<<"Open staff.dat error!"<<endl;
exit(1);
}
for(int i=0;i<5;i++)
iofile.write((char*)&staf[i],sizeof(staf[i]));
iofile.close();
return 0;
}
我用的是DEV C++,win7.这是什么原因呢?
这是一条镜像帖。来源:北邮人论坛 / cpp / #72918同步于 2013/7/30
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
请教大家一个问题
guanzhe
2013/7/30镜像同步5 回复
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
你建立那个.dat文件了吗?!
【 在 guanzhe (双鱼座) 的大作中提到: 】
: 我今天看谭浩强的C++遇到这样一个问题:
: 我想把五名员工的信息向磁盘文件输出时总是open error!我觉得程序没问题,然后把习题集上的答案原封不动的敲上去,结果还是open error!怎么回事?我把代码精简了下,如下:
: #include<iostream>
: ...................
我擦!果然是这个问题!谢谢了!不过为什么之前用ofstream outfile()和iftream infile()都能自动建立文件呢?
【 在 shenlei 的大作中提到: 】
: 你建立那个.dat文件了吗?!
谢谢!
【 在 a206206 的大作中提到: 】
: 请看c++函数的说明
: http://www.cplusplus.com/reference/cwchar/wcscat/