语言:C
我希望我知道如何更好地在标题中引用此内容。我最近遇到了有关结构定义的这段代码,而我对语法不熟悉,尤其是“ * Node”部分。可能有人请帮助我了解发生了什么事?为什么/我们为什么不使用typedef /这完全是其他东西吗?作为进一步参考,源代码在某些函数定义中使用“节点”(不带星号),而无需在函数本身内传递或声明任何“节点”变量。这使我认为这是某种全局变量声明。任何帮助表示赞赏!
struct node {
char word[MAX];
struct node *left;
struct node *right;
} *Node;
代码定义了指向Node
的指针名称struct
。参见declare Node as pointer to struct node;
也许更容易理解,分为两个步骤。
struct node {
char word[MAX];
struct node *left;
struct node *right;
};
struct node *Node;