标题:链表的生成求解,编译没有报错,运行输入值以后,程序就崩溃了。
取消只看楼主
啦啦boy
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2018-8-13
结帖率:25%
已结贴  问题点数:5 回复次数:2 
链表的生成求解,编译没有报错,运行输入值以后,程序就崩溃了。
#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
typedef struct Node
{
    int data;
    struct Node *pNext;
}NODE,*PNODE;
PNODE create_list();
void main()
{
    PNODE phead = NULL;
    phead = create_list();
}
PNODE create_list()
{
    int i,len;
    int val;
    PNODE pnew = NULL;
    PNODE phead = NULL;
    PNODE tail = NULL;
    phead = (PNODE)malloc(sizeof(NODE));
    if(phead==NULL)
    {
        printf("分配失败");
        exit(-1);
    }
    phead = tail;
    printf("请输入需要创建多少个结点?");
    scanf("%d",&len);
    for(i = 0;i<len;i++)
    {
        printf("请输入第%d个结点的数值",i+1);
        scanf("%d",&val);
        pnew = (PNODE)malloc(sizeof(NODE));
        if(pnew==NULL)
    {
        printf("分配失败");
        exit(-1);
    }
        pnew->data = val;
        tail->pNext = pnew;
        pnew->pNext = NULL;
        tail = pnew;
    }
    return phead;
}
搜索更多相关主题的帖子: 输入 malloc Node NULL printf 
2018-08-25 23:19
啦啦boy
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2018-8-13
得分:0 
哦哦,我明白你的意思了。但是  没有考虑链表为空的情况时,程序为什么会崩溃呢?它的本质是什么呢?
2018-08-26 09:29
啦啦boy
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2018-8-13
得分:0 
回复 2楼 zhangchm2018
哦哦,我明白你的意思了。但是  没有考虑链表为空的情况时,程序为什么会崩溃呢?它的本质是什么呢?
2018-08-26 09:34



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




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

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