void InitList(LinkList &L)
{
L = (LinkList)malloc(sizeof(LNode));
if (!L)
exit(OVERFLOW);
L->next = nullptr;
}
Status ListEmpty(LinkList L)
{
if (L->next)
return FALSE;
else
return TRUE;
}
int ListLength (LinkList L)
{
LinkList q;
q = L->next;
int i = 0;
while (q)
{
i++;
q = q->next;
}
return i;
}
int main()
{
LinkList L;
ElemType e;
Status i;
int j, k;
InitList(L); //构造一个空的链表
for (j = 1; j <= 5; j++)
{
ListInsert(L, 1, j); //在链表L的第一个元素之前插入j
}
for (j = 1;j <= 5; j++)
{
L = L->next;
printf("%d\n", L->date);
}
i = ListEmpty(L);
printf("是否为空表? i =%d(1:是,0:否),表L的长度 = %d\n",i, ListLength(L));
system("pause");
return 0;
}
求大佬看一下啊 为什么前边输出了54321 后边还显示为空表啊 ,自己折腾了半天 没弄明白哪里错了