从一个指针的例子说起,head指向链表的头:
1.ptr=head;
head=NULL;
2.ptr2=head;
head=head->next;
head=NULL;
这两个例子执行head=NULL后,分别对ptr、ptr2有什么影响。
上面的例子讲的就是指针和指针指向的内容。
第一个只是修改了head指针本身,让它指向了一块地址为NULL的内存,而ptr仍然指向之前的内存,所以对ptr并没有产生什么影响。
第二个修改的是head指针指向的内存的内容,后两句相当于head->next=NULL,这样更容易理解。head指向的那块内存中的next指针变量指向了NULL,因为ptr2和head指向的内容相同,所以ptr2指向的内存中的next为NULL了。