在代码中
struct link *node
{
int data;
struct link *next;
};
下一个元素指向指针吗?
node=node->next
做了什么?
答案 0 :(得分:1)
以下是无效的C(它不会编译):
struct link *node
{
int data;
struct link *next;
};
你可能想要:
struct link
{
int data;
struct link *next;
} * node;
是指向[?]
的下一个元素指针
不,(如果已实例化)next
是指向struct link
的指针。
node=node->next
做了什么?
它分配给node
node->next
指向的地方。
答案 1 :(得分:0)
在您的结构中,实例字段next
存储指向下一个链接的指针。
这一行
currNode = currNode->next;
...使指针currNode
指向currNode
之前指向的节点之后的节点。
运算符->
与点语法相同,但用于指针。
但是,您提供的代码node->next
不会执行任何操作,因为您没有名为" node"的变量。
此外,you struct的定义不会编译。它应该是struct link
,而不是struct link *node
。