求大神指导下!关于链表的!
#include <stdio.h>
#include <stdlib.h>
typedef int Elemtype;
typedef int Status;
typedef struct LNode
{
Elemtype date;
struct LNode *next;
}LNode,*Linklist;
void initlist_Link(Linklist L)
{
int i,n;//n为表的长度
Linklist p,q;
printf("输入表的长度:\n");
scanf("%d",&n);
p=(Linklist)malloc(sizeof(LNode));
p->next=NULL;
L=q=p;
for(i=n;i>0;i--)
{
p=(Linklist)malloc(sizeof(LNode));
printf("输入date:\n");
scanf("%d",&(p->date));
p->next=NULL;
q->next=p;
q=p;
}
}
void print(Linklist L)
{
Linklist p;
p=L->next;
while(1)
{
printf("%d ",p->date);
if((p->next)==NULL)
break;
else
p=p->next;
}
}
void main()
{
Linklist La;
initlist_Link (La);
print(La);
}
就是创建链表和输出链表,想问下大神们,运行之后弹出来一个Main.exe已经结束工作,问下是哪里错了。
[解决办法]
void initlist_Link(Linklist &L)///设置成引用或者
void initlist_Link(Linklist *L)///设置成指向指针的指针