计算链表节点个数,为什么是WA

int getLength(LinkList L)
{
    LinkList p;
    int length=0;
    while(p!=NULL){
        p=p->next;
        length++;
    }
    return length;
}

length从1开始我也试过了

int getLength(LinkList L)
{
LinkList p;
p=L;
int length=0;
while(p!=NULL){
p=p->next;
length++;
}
return length-1;
}

LinkList p; p没初始化,应该是把L赋值给p,   改成 LinkList p = L;
int getLength(LinkList L)
{
    int length=0;
    while(L!=NULL){
        L=L->next;
        length++;
    }
    return length;
}