void ClearList(List first,List * lst){
Node *p = nullptr;
while(first){
p = first;//思想:a ,b两个数,想要互换操作则是要空的中间变量,把将要覆盖的值复制到空的中间变量
first = first->link;
free(p);
// p = first->link;
// free(first);
}
*lst = nullptr;
}
传进来的first是值传递,把单链表删除后,形参first虽然为空,但是实参确没改变 依旧指向原来的地址,但原来的地址已经释放,此时若操作是错误而且是危险