为什么是这个样子的?请求解答!

img


请问就是Node*last=head不就相当于让last指向null了吗?那这样怎么还能进入到if语句中呢?

第一次的话last=head=p

第一次循环中
Node*last=head
之后如果last==NULL,那么head=p。从第二次循环开始last=head,就不是NULL了,因此可以进入if里