标题:fwrite存文件,再用fread打开的问题
取消只看楼主
zenglw
Rank: 2
等 级:论坛游民
帖 子:38
专家分:17
注 册:2009-10-22
结帖率:80%
已结贴  问题点数:20 回复次数:2 
fwrite存文件,再用fread打开的问题
程序代码:
#include<stdio.h>
#define SIZE 1
struct student_type
{
       char name[10];
       int num;
       int age;
       char addr[15];
}stud[SIZE];

void save()
{
     FILE *fp;
     int i;
     if((fp=fopen("list","wb"))==NULL)
     {
        printf("cannot open file\n");
        return;
     }
     for(i=0;i<SIZE;i++)
        if(fwrite(&stud[i],sizeof(struct student_type),1,fp)!=1)
           printf("file write error!\n");
     fclose(fp);
}


int main()
{
    int i;
    for(i=0;i<SIZE;i++)
       scanf("%s%d%d%s",stud[i].name,&stud[i].num,&stud[i].age,stud[i].addr);
    save();
   
}
先用这个输入数据到“list”文件中     输入:Han 1001 21 room1


程序代码:
#include<stdio.h>
#define SIZE 1
struct student_type
{
       char name[20];
       int num;
       int age;
       char addr[15];
}stud[SIZE];

int main()
{
    int i;
    FILE *fp;
    fp=fopen("list","rb");
    for(i=0;i<SIZE;i++)
    {
       fread(&stud[i],sizeof(struct student_type),1,fp);
       printf("%s\n%d\n%d\n%s\n",stud[i].name,stud[i].num,stud[i].age,stud[i].addr);
    }
    fclose(fp);
   
}
再用这个打开“list”文件,但是结果是。。
Han
1836019570
49
(第4行什么都没有)
    问题出在哪。。谢谢各位了

[ 本帖最后由 zenglw 于 2010-3-13 11:03 编辑 ]
搜索更多相关主题的帖子: fwrite fread 文件 
2010-03-13 11:00
zenglw
Rank: 2
等 级:论坛游民
帖 子:38
专家分:17
注 册:2009-10-22
得分:0 
回复 2楼 forever74
那要怎么解决?谢谢了。。
2010-03-13 11:07
zenglw
Rank: 2
等 级:论坛游民
帖 子:38
专家分:17
注 册:2009-10-22
得分:0 
哈。。谢谢
2010-03-13 11:45



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-299275-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.750561 second(s), 11 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved