while(p) 和if(p)在这里的意思差不多都是当p不为空的是指执行后续语句等价于 while(p != NULL ) if (p != NULL)在代码中你还可以看到类似这样的写法while(!p) if(!p)这个就是当p为空的时候才执行后续的语句 等价于while(p == NULL ) if (p == NULL )