关于C语言 尾插法建立单链表并将头指针返回给主函数的问题
发布网友
发布时间:2022-05-27 19:04
我来回答
共2个回答
热心网友
时间:2023-11-19 22:08
能呀,,c是指向该链表的指针,,但是你怎么不编一个释放内存的函数,,这样做对电脑不好,,
这是显示链表函数:
void show(P *h)
{
P *p;
p=h->next;
while(p!=NULL)
{
printf("%-10d",p->data);
p=p->next;
}
puts("");
}
这是释放链表的函数:
void fre(P *h)
{
P *p1=h,*p2=h->next;
while(p2!=NULL)
{
free(p1);
p1=p2;
p2=p2->next;
}
}追问额 我是个新手啊 不是很理解为什么要释放啊关闭程序的时候应该会把内存释放掉吧..
追答malloc申请的内存得释放,,其他的不用释放,数据占用的内存程序会释放,,
热心网友
时间:2023-11-19 22:08
这个函数可以实现建立一个长度为n的链表
不过c=Create(a);这里c是一个表头指针,内容为空,要访问链表应该从c->next所指向的节点开始,例如在主函数中加上输出链表
void main()
{int i,a;
LinkList *c,*p;
printf("请输入链表长度:");
scanf("%i",&a);
c=Create(a);
p=c->next;
for(i=0;i<a;i++)
{
printf("%4d",p->data);
p=p->next;
}
printf("\n");
}