【发布时间】:2017-12-19 17:17:49
【问题描述】:
这是我的代码:
typedef struct Node *link;
typedef struct Node
{
char data;
int count;
link right;
link left;
link next;
}nd;
node nd[100];
link current;
当我尝试在 main 中执行此操作时
current = current->nd[0].right;
它向我展示了:
[错误]“结构节点”没有名为“nd”的成员
我该如何解决?
【问题讨论】:
-
您的
current是link类型。link是一个没有名为nd的成员的结构。对我来说似乎很清楚。你的nd是一个node的数组,与current完全分开。你希望他们之间有什么样的关系?它没有在您的代码中表达。 -
抱歉错字,已编辑
-
@joejordishon 你的版本是错误的,没有意义
-
那个编辑没有帮助。您现在刚刚创建了一个名为
nd的类型(其类型为struct Node)。current仍然是link类型,并且该结构仍然没有名为nd的成员。 -
C 是区分大小写的语言。因此,您的代码中的
node未定义。
标签: c arrays struct compiler-errors