首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

有关C++文件输入输出的有关问题,

2012-02-11 
有关C++文件输入输出的问题,急请指教数据结构如下:typedefstructRT{charName[20]intAgecharDisease[30]

有关C++文件输入输出的问题,急请指教
数据结构如下:
typedef   struct   RT{

char   Name[20];
int   Age;
char   Disease[30];
}RT;

void   main()
{     int   i;
      FILE   *fp;
      for(i=0;i <3;i++)
{
cout < < "name: ";
cin> > student[i].Name;
cout < < "age: ";
cin> > student[i].Age;
cout < < "disease: ";
cin> > student[i].Disease;
}
      fp=fopen( "client.txt ", "w ");
for(i=0;i <3;i++)
{  
fwrite(&student[i].Name,20,1,fp);
fwrite(&student[i].Age,sizeof(int),1,fp);
fwrite(&student[i].Disease,30,1,fp);
}
      fclose(fp);

}

输入:liang   1   heart
            shao     2   nose

我理想中的打开client.txt文件内容是:

liang   1   heart
shao     2   nose

但实际上打开client.txt文件时所看到的是:
liang   烫烫烫烫烫烫烫       heart   烫烫烫烫烫烫烫烫烫烫烫烫shao   烫烫烫烫烫烫烫?       nose   烫烫烫烫烫烫烫烫烫烫烫烫  


为什么呢?怎么解决?请指教


     


[解决办法]
student.Name[19]= '\0 ';
student.Disease[29]= '\0 ';
fwrite(&student.Name,strlen(student.Name),1,fp);
fprintf(fp, "%d ",student.Age);
fwrite(&student.Disease,strlen(student.Disease),1,fp);

热点排行