问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c++文件和重载输出符问题

发布网友 发布时间:2023-04-13 19:20

我来回答

2个回答

热心网友 时间:2023-10-10 03:03

流运算符的重载要以友元函数的形式,并且声明和定义要放在一起。
改成这样,就可以了
#include<iostream>
#include<string>
#include<fstream>
#include<stdlib.h>
using namespace std;
class Cstudents
{
public:
int num;
char name[30];
char gender;
int age;
float match;
float pc;
float en;
float sum;
float average;
Cstudents()
{
num=0;
strcpy(name," ");
gender=' ';
age=0;
match=0;
pc=0;
en=0;
sum=0;
average=0;
}
friend istream& operator>>(istream& is,Cstudents& c)
{
is>>c.name>>c.gender>>c.age>>c.match>>c.pc>>c.en;
return is;
}

friend ostream& operator<<(ostream& os,Cstudents& c)// <<符号也输错了
{
os<<c.num<<c.name<<c.gender<<c.age<<c.match<<c.pc<<c.en;
return os;
}

};
void main()
{
Cstudents stu[20];
ofstream fout;
ifstream fin;
int i=1,n,max=1;
fout.open("students.txt",ios::out|ios::binary);
if(!fout)
{
cout<<"错误";
exit(1);
}
cout<<"输入学号:(0号为结束输入)";
while(cin>>n&&0!=n)
{
stu[n].num=n;
cout<<"输入名字 性别 年龄 数学 计算机 外语";
cin>>stu[n];
if(n>max)max=n;
}
while(i<max+1)
{
fout.write((char*)&stu[i],sizeof(Cstudents));
i++;
}
fout.close();
fin.open("students.txt",ios::in|ios::binary);
if(!fin)
{
cout<<"错误";
exit(1);
}
cout<<"num\t"<<"name\t"<<"sex"<<"age\t"<<"match\t"<<"pc\t"<<"en\t";
i=1;
while(fin&&i<max)
{
fin.read((char*)&stu[i],sizeof(Cstudents));
cout<<stu[i];
i++;
}
fin.close();
}

热心网友 时间:2023-10-10 03:03

第一个错误不是很明白,你试试这样
String str="";
strcpy(name,str);
第二个错误也不是很明白,因为没找到81行在哪儿。
c++中重载输出操作符,为什么要返回引用

1.第一个形参为对ostream对象的引用,在该对象上将产生输出,ostream为非const,因为写入到流会改变流的状态;该形参是一个引用,因为不能复制ostream对象(在c++中定义的标准输入输出流类istream和ostream,其中拷贝构造函数和赋值操作符函数都被放置在了private部分,且只有声明,没有定义)。2.第二个形...

C++中,complex重载输入输出操作符 error C2248: 'real' : cannot a...

同时:friend ostream&amp; operator&gt;&gt;(ostream&amp; os,const complex &amp;c);ostream&amp; operator &gt;&gt;( ostream &amp;os,const complex c)//少了一个&amp;

函数重载问题 这代码是例题啊 在VS2010中编译不通过 说 float double...

应该是跟库函数冲突了,你可以把abs函数名改成别的。

关于C++程序的问题 貌似是重载 请高人指点

cout=0; &lt;= 你把C++的标准输出给重定义了,想干什么?for(k=0;k&lt;j;k++)if(w[k]=='r'){ cout++;k=0;break;} 只要字符串里有字符'r',你就把循环变量k重新赋值为0,那不死循环了么?永远达不到k&lt;j的条件。

c++重载小问题

一,对于isiahe给LZ的点评中,友元函数的重载是有两个参数,这点LZ是对的。二,isiahe的正解无法实现连加,比如z=z+x+x;会出现问题。返回一个局部变量的引用问题,不经常练习编程会常出现,通常的解决方法,个人心得:一是作为参数传递,如MSDN中定义的函数输出很多是通过这种方法。二是作为全局变量...

c不是指针吗,输出不是应该为一个地址吗?为什么输出1234

输出流遇到不同的数据类型时有不同的重载方式。当遇到char*类型时,输出字符串的内容,而不是字符指针所指的地址。

请教关于C++中重载的问题4

你的这个程序问题太多了,有很多地方似乎在想当然。上面的英文的大意是编译器内部错误。其实就是有很多错误,它也处理不过来。也有可能是 你的编译器本身没装好。1。matrix(){a[3]=0,0,0;b[3]=0,0,0;c[3]=0,0,0;} 这个赋值是不行的,数组在声明的时候才可以这样赋值。2。friend operator...

C语言的输入输出函数和C++的输入输出流有什么区别?

C++ 的IO流库使用面向对象方法写的,用户可以重载定制,并且有严格的类型检查机制和异常处理 但是C的IO为纯粹过程式完成,无法检查类型,并且没有合适的异常机制来制止不正确的输入

新手。。C/C++输出出现一串问号

printf("%s" , s);//输出乱码 果断切换成c++版本的cout发现可以正常输出。于是上网找答案,居然惊讶的发现printf输出字符串是针对char *的,换言之,printf只能输出c语言中的内置数据,string不是c语言内置数据。更深入的来说:s这个string类型的对象并非单单只有字符串,其内还有许多用于操作的函数,...

C语言 大神们帮我看看这个指数幂问题!!!不知道为什么我老是出错_百度知...

不过这个错误其实很奇怪,因为c不存在函数重载的,函数重载是C++的概念,所以对于纯C来说是不存在这个问题的。我估计是你的编译器设置的时候没有设置成为根据源文件后缀来自动识别语言。所以他还是按照C++的方式来进行编译。这种显式类型转换虽然可以让他编译过去,但是实际上是按照C++的方式编译的,不是C...

如何重载输出运算符 重载输出运算符 输入输出重载 重载与访问修饰符有关吗 重载输入运算符 方法重载输出 重载输出流 成员函数重载输出 c++重载运算符
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
离焦和普通镜片的区别 昨夜星辰昨夜风,画楼西畔桂堂东.身无彩凤双飞翼,心有灵犀壹点通 后面的... “昨夜星辰昨夜风,画楼西畔桂堂东。”是什么意思_出处及原文翻译_学 ... 春捂养生吃什么?春不捂好易宫寒严重者或致不孕! 吃什么滋阴养颜 四种滋阴的食物最适合女性主妇网 5种食物来帮忙,滋阴补肾更健康 十大滋阴补气保健食材推荐 女性滋阴润燥最好的10种补品有哪些_百度知 ... 500g肉松紫米饭团的大小 下雨天的心情说说经典 三文鱼的胆固醇高吗 Xcode 中写C 显示#include &lt;conioh&gt; file not fou 平板电脑无法启动,显示smart founes怎么办 PHILIPS Pcdv5016p1驱动怎么装 击fou(3声)您知道这个字吗? 请电脑高手来 我玩LOL好卡 求大神指导电脑基本信息 我的电脑 方正 Founder PC 台式电脑 操作系统 Windows XP 专业版 32 几月份适合去张北坝上草原离北京多远 张北草原适合几月份去 舌战的诗句舌战的诗句是什么 唇枪舌战的介绍 舌战[shé zhàn]什么意思?近义词和反义词是什么?英文翻译是什么? 舌战的解释舌战的解释是什么 舌战的网络解释舌战的网络解释是什么 梦见抓了好多鱼嘴里还吃了鱼 梦见抓了一条很大的鱼并吃了 梦见已故的人活了又死死了又活的预兆 梦见死去的人又活的预兆 十全的拼音狐十全的拼音是什么 十日的拼音狐十日的拼音是什么 十纪的拼音狐十纪的拼音是什么 高手在哪里,我的AVG PC 昨天突然不能用了,百度上的注册码我都试过一边了,不行,求高手给我一个可用的 刘雪铷名字多少分 穑的意思 四字成语弃什么捐什么 你好我的电话掉水里了但是马上就捞出来了会进水吗? 睡眼惺忪的意思解释 买高铁票进站步骤 婺源哪个古镇最值得去 江西有什么古镇 大觉山古镇好玩吗大觉山古镇值得去吗 江西古镇有哪些江西古镇旅游景点介绍 梦见张巧玲被牛拱了的预兆 梦见蓝佳雯被牛拱了的预兆 天使眼手机壳拍照出现光晕 松形鹤骨的意思? 从古至今,以母爱为主题的现代诗有很多,如果让你选择一首朗读,你会选择哪一首呢?为什么? 书厨的解释 书柜的诗句书柜的诗句是什么 谢傅监仓原文_翻译及赏析 碧纱厨的诗词碧纱厨的诗词是什么