c++问题 谁能解释下面的一个程序要求详细一点

voidfunc2(){ifstreaminput("MyFrd.dat");MyFriends;cout<<"输入数据"<<endl;cout<<setiosflags... void func2()
{
ifstream input("MyFrd.dat");
MyFriend s;
cout<<"输入数据"<<endl;
cout<<setiosflags(ios::left)
<<setw(6)<<"年龄"<<setw(10)<<"姓名"<<setw(7)<<"电话"<<endl;
input.read((char *)&s,sizeof(s));
展开
 我来答
AutumnMagician
2008-03-07 · TA获得超过298个赞
知道小有建树答主
回答量:379
采纳率:0%
帮助的人:502万
展开全部
void func2() //定义一个自定义函数,没有返回值(void),没有参数
{
ifstream input("MyFrd.dat");
/* ifstream是fstream中的一个类名,用于文件的输入,该行定义一个input对象,用于打开文件"FyFrd.dat". */
MyFriend s; //用自定义类名或变量类型定义一个变量s
cout<<"输入数据"<<endl;
cout<<setiosflags(ios::left)
<<setw(6)<<"年龄"<<setw(10)<<"姓名"<<setw(7)<<"电话"<<endl;
/* 用流对象cout向显示器输出后续对象.cout在iostream中.使用endl会输出一个回车并清空流.在iomanip中的setiosflags()和setw()分别用来设定后面对象的输出格式和宽度. */
input.read((char *)&s,sizeof(s));
/*read()函数的作用是读取文件内容.sizeof()运算符用于计算括号中变量或变量类型所占用的字节数.该语句调用input的read方法于文件"FyFrd.dat"中读取一个长度为sizeof(s)的字符串并写入变量s中. */
疾似云流
2008-03-07 · TA获得超过1159个赞
知道小有建树答主
回答量:1093
采纳率:0%
帮助的人:474万
展开全部
ifstream是一个文件输入流的类,input是类名,"MyFrd.dat"是构造的文件名。也就是用一个input流从MyFrd.dat读入数据。
cout是把数据输出到控制台,endl是结束一行并且会刷新流的缓冲区(end line)。
setioflags是设置io流的状态,left是一种流状态。
setw()是设置输出行的宽度的。
input.read()是读入函数,(char*)&s把s的地址转化为char型指针,sizeof(s)获得s的大小。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式