*LinkList 表示 LinkList是一个 struct LNode *的类型别名,也就是
LinkList 与 struct LNode * 是等价的,在程序中,这两个串是可以互换的。
typedef是类型重定义符,这里是因为C语言使用结构体时都要加上struct作为前缀,如:
struct LNode *p,*q; //定义p,q两个结构体指针
如果typedef把 struct LNode *重新定义为LinkList后,就可以这样简单地写了:
LinkList p,q; //定义两个结构体指针p,q
两者作用相同,但是后者更加清晰和容易明白。
typedef 是类型定义,将结构体的名字定义成LNode,其实意思就是
typedef struct LNode LNode;
typddef struct LNode* LinkList;
LNode tLNode; // 是结构体变量
LinkList p; // 是结构体指针
typedef 只是给数据类型一个简写或者叫别名,便于编码时方便使用,也就相当于给人取个外号。
如果不用typedef的话, 你每次用这个结构定义变量的时候,就要协商一堆的struct..., 如果用typedef的话,就可以直接用LNode定义变量了。
将自定义的结构体定义成两种类型,一种是结构体自己,一种是结构体指针类型,逗号隔开只是语法要求