【单链表的测长】:
//单链表的测长
//返回单链表长度
int length(node *head)
{
int len = 0;
node *p;
p = head->next;
while(p != NULL)
{
len++;
p = p->next;
}
return len;
}
由于链表末尾节点的next指针被置为NULL,因此可以使用while循环遍历链表所有节点,当遇到NULL时结束循环。
摘自《C和C++程序员面试秘笈》