标题:还是那个程序,为什么追加数据后,头指针会不明不白的丢失!?
只看楼主
小焦叔叔
Rank: 1
来 自:广西 河池
等 级:新手上路
帖 子:59
专家分:2
注 册:2020-2-15
结帖率:78.57%
已结贴  问题点数:20 回复次数:2 
还是那个程序,为什么追加数据后,头指针会不明不白的丢失!?
#include"STDIO.H"
#include"CONIO.H"
#include"STDLIB.H"
#include"DEF_TYPE.H"

struct tel_node *Add_Node(struct tel_node *head)
{
    struct tel_node *tail,*p_new;
    char name[20];
    char tel_code[11];
   
    system("cls");
    printf("姓名\t电话号码:");
    scanf("%s%s",name,tel_code);
    putch('\n');
    p_new=(struct tel_node *)malloc(sizeof(struct tel_node));
    strcpy(p_new->name,name);
    strcpy(p_new->tel_code,tel_code);
    p_new->next=NULL;
    if(head==NULL)
    {
        head=p_new;        
    }   
    else
    {
        tail=head;
        while(tail->next!=NULL)
        {
            tail=tail->next;
        }
        tail->next=p_new;   
    }
   
    return(head);
}


以前那个问题我解决了,那是因为结构体指针没有申请空间。现在另一个文件又有一个新的问题,就是,一旦输入了新的节点数据,头指针就会莫名其妙的丢失!新的链表总是从第二个节点开始。各位同学请帮帮忙,看看是什么问题?谢谢!!!!!!
搜索更多相关主题的帖子: next head 指针 struct 丢失 
2021-02-25 00:02
星泪成寒
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:6
帖 子:75
专家分:539
注 册:2013-5-19
得分:10 
没看出有啥问题
2021-02-25 15:56
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:10 
问题肯定有的,比如 head=p_new 这一句,其中 head 是个临时对象,给它赋值并不能传回调用者那里。

代码不全,不知所云;问题不相干的代码太多,懒得看。
2021-02-25 16:31



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




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

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