typedef为C语言的关键字,作用是为一种数据类型定义一个新名字。
这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。
typedef struct node *link
就表示用 link 代替 struct node *
也就是本来要定义变量如下的
struct node * p;
可以写成
link p;
这样明显简洁很多。
typedef 是定义类或者结构体的别名。Link 和 Position 实际上是结构体LNode的指针类型。在标准C中,定义一个结构体变量形式是struct LNode Node;struct LNode* pNode;在C 中可以不加struct用了typedef重新定义两个别名用起来方便,且逻辑清晰
麻烦`采纳.··.··.·`
typedef是类型声明,那么typedef struct node 意思就是声明了一个struct node 类型。
简单意思就是用link代替struct node*,使代码简洁。比如,typedef Node*Link,是一样的道理。(如果不对,请指示)。
struct node{}结构体,typedef struct node *link这样看就很清楚了,struct node * = link,如果link p;相当于struct node * p定义了一个node节点的指针;这种用法只在c语言中使用,c++中会有区别。