标题:这段代码是什么问题,为什么读取数据会出现-842150451呢?
只看楼主
zyx1989
Rank: 1
等 级:新手上路
帖 子:86
专家分:2
注 册:2011-9-17
结帖率:83.33%
已结贴  问题点数:18 回复次数:2 
这段代码是什么问题,为什么读取数据会出现-842150451呢?
stud *load()
{
    stud *p,*q,*h;
    FILE *fp;
   
    fp=fopen("d:\\F","rb");//打开一个文件//
    if(fp==NULL)//检测文件能否打开//
    {
        printf("can not open file!");
        return(0);
    }
   
   

    h=NULL;
    while(!feof(fp))
    {  
        
        p=(stud *)malloc(sizeof(stud));
        fread(p,sizeof(stud),1,fp);
        p->link=h;
        h=p;
        
        
      
    }

     while(h!=NULL)
     {
         printf("%5d %d\n",h->num,h->age);
         h=h->link;
    }
    fclose(fp);
   
   
}
搜索更多相关主题的帖子: 检测 return while 
2011-10-16 18:40
laoyang103
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:内蒙古包头
等 级:贵宾
威 望:19
帖 子:3082
专家分:11056
注 册:2010-5-22
得分:18 
最后一个节点没读到值  而且你的链表创建 一没有头结点 二不是头插法但是类似尾插法

不应该从尾巴开始输出

                                         
===========深入<----------------->浅出============
2011-10-16 18:50
zyx1989
Rank: 1
等 级:新手上路
帖 子:86
专家分:2
注 册:2011-9-17
得分:0 
我用的尾插法,怎么没读到呢,该怎么改
2011-10-16 18:58



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




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

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