gpt4 book ai didi

c++ - 如何从指针到该节点的指针获取单链表节点值?

转载 作者:行者123 更新时间:2023-11-30 03:15:20 25 4
gpt4 key购买 nike

我想从单链表中删除节点。我有变量“pp”(指向当前节点指针的指针)遍历整个列表,直到找到要删除的节点(在这种情况下,值为“a”的节点),但是当我试图达到当前节点它给我一个错误('->value' 的左侧必须指向类/结构/union/泛型类型)请告诉我我的代码有什么问题

Node** pp = &head;
while(*pp->value != a){ \\ error on this line
pp = &(*pp->next);
}
*pp = *pp->next;

最佳答案

尝试使用括号,如下所示:

(*pp)->value

operators precedence导致您面临的错误。运算符 -> 的优先级高于运算符 *,这就是您需要使用括号的原因。

错误('->value' 的左侧必须指向类/结构/union/泛型类型)强烈提示你这里发生了什么:你试图在不是 a 的东西中请求 value结构,您试图在地址 (pp) 中请求成员,而不是在结构中(其中 pp 指向,即 *pp).

不要忘记在其余代码中使用括号,例如 (*pp)->next

PS:不要忘记释放要删除的节点,您更新了next 指针之后!

关于c++ - 如何从指针到该节点的指针获取单链表节点值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57125817/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com