这个代码有点炫技的成分,搞得让人比较难懂
它将循环变量改为head后者next的指针的指针。这样当找到需要删除的节点时,通过这个指针的指针指向该节点的next,就相当于前一个节点的next指向当前节点的next,从而将当前节点从链表里删除掉。
这段代码的技巧是不再需要定义一个节点记录前一个节点指针了。
可能这么说你也看不明白。
这个代码是你自己写的吗?完全多此一举
因为 你这个 indrect 是 *,所以,&((indrect)->next) 是为了取下一个节点的地址
最关键,这个逻辑完全没有达到删除的目的