C++创建文件失败???

woshiwoxinheqiu woshiwoxinheqiu 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
#include<iostream>
#include<fstream>
#include<cmath>
using namespace std;
class flei
{
private:
int x;
double y;
public:
friend ostream & operator<<(ostream &os,flei & ff);
friend istream & operator>>(istream &is,flei & ff);
void get(int q);
void display();
};
ostream & operator<<(ostream &os,flei & ff)
{
os.write((char *)& ff.x,4);
os.write((char *)& ff.y,8);
return os;
}
istream & operator>>(istream &is,flei & ff)
{
is.read((char *)&ff.x,4);
is.read((char *)&ff.y,8);
return is;
}
void flei::get(int q)
{
x=q;
y=sqrt(double(q));
}
void flei::display()
{
cout<<x<<y;
}
int main()
{
int a ;
fstream f1;
f1.open("dat.txt",ios::binary|ios::in|ios::out);
if(!f1)
{
cout<<"error"<<endl;
exit(0);
}
flei s;
for(int i=1;i<21;i++)
{
s.get(i);
f1<<s;
}
cout<<"请输入1-20内的数"<<endl;
cin>>a;
f1.seekg(sizeof(flei)*a);
f1>>s;
s.display();
f1.close();
return 0;
}

原题:
建立一个二进制文件,用来存放自然数1~~20及其平方根,然后输入1~~20之内的任意一个数,查找其平方根显示在屏幕上;
上面是我写的代码,谁帮我看下,我每次运行都是“error”
郁闷!
谁能给我说说为什么啊?
...全文

相关推荐

评论 10
收藏 已收藏
分享
返回顶部
woshiwoxinheqiu
C++ 语言 65,214 成员 250,514 内容