//---------定义线性表的单链表的存储结构-------------
typedef struct Lnode{
ElemType data; //数据域
struct Lnode *next; //指针域
typedef struct Lnode{
ElemType data; //数据域
struct Lnode *next; //指针域
}Lnode,*LinkList;
在这个单链表结构体的定义中,对于*LinkList 无法理解,下面经过百度和浏览其他博客发现可以这样理解:
typedef struct LNode LNode; typddef struct LNode* LinkList;
typedef是用于类型定义的,相当于给数据类型另外一个名字。
第一句是将结构体变量用LNode取代,这样便于描述。
第二句是将指向结构体变量structLNode的指针,用LinkList表示,也就是LinkList是代表一种数据类型,代表的数据类型是指针指向结构体变量LNode的指针。
声明变量,就可以这样使用了:
LNode anode; // anode是结构体变量 LinkList pa,pb; // pa,pb是结构体指针