标题:关于调用子函数的求助!拜托了!
取消只看楼主
RayTang
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2019-5-11
结帖率:100%
 问题点数:0 回复次数:3 
关于调用子函数的求助!拜托了!
程序代码:
#include <stdio.h>
#include <stdlib.h>
#define true 1
#define false 0
typedef struct node
{
    int d;
    struct node *next;
}node;
/*创建有五个实际节点的单链表*/
void Creat(node *h)
{
    node *p,*t;
    int i;
    h=(node *)malloc(sizeof(node));
    h->next=NULL;
    p=h;
    for(i=0;i<5;i++) 
    {
        t=(node *)malloc(sizeof(node));
        t->next=NULL;
        printf("请输入一个要放入单链表的数字:");
        scanf("%d",&t->d);
        printf("\n") ;
        p->next=t;
        p=t;
    }
printf("\nFirst output h->next %p\n",h->next);  /*输出h->next的地址*/ 
} 
int main()
{
    node *h;
    Creat(h);
printf("\nSecond output h->next %p\n",h->next);         /*输出h->next的地址*/ 
        return 0;
}

请问为什么这个程序在执行完子函数Creat就终止了?
为什么没有执行主函数中的printf函数?
搜索更多相关主题的帖子: 子函数 node int next printf 
2019-05-11 21:14
RayTang
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2019-5-11
得分:0 
回复 2楼 不懂才问
虽然我还不知道如何改这个程序,但谢谢你的解答!
在子函数Creat中先用malloc函数生成了h,那h就有了值,不是不用初始化了吗?
(我也不知道自己哪里理解错了)
请你进一步解答,拜托了!


2019-05-11 22:50
RayTang
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2019-5-11
得分:0 
回复 4楼 林月儿
感谢版主!问题已解决。
2019-05-12 08:37
RayTang
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2019-5-11
得分:0 
回复 5楼 forever74
感谢forever74!讲的很形象。
2019-05-12 08:38



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




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

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