目录
1.定义单链表存储结构
typedef struct LNode{
ElemType data;
struct LNode *next;
}LNode,*LinkList;
以上代码段可以分解为:
typedef struct LNode LNode; //将结构体类型struct LNode重命名为LNode
typedef struct LNode *LinkList; //将struct LNode *重命名为LinkList
2.创建单链表
LinkList L; //等价于 struct LNode * L
使用LinkList L;语句可以创建一个单链表; 使用struct LNode * L;语句也可以创建一个单链表,这两条语句的最终结果都是一样的,只是表达方式有些不同
3.图解LNode与*LinkList的联系![](https://i-blog.csdnimg.cn/blog_migrate/b33c268e65110c25e19e57b932e093ab.png)
可以理解为,通过typedef,将struct LNode *替换为LinkList,当我们在使用LinkList L定义变量时,实际上就是在使用 struct LNode * L定义变量。使得以后想要定义指向struct LNode类型的指针变量时,不需要写struct LNode *,只需要使用LinkList,减少了代码的书写量。
提示:当我们使用语句LinkList L创建单链表后,再调用InitList函数对单链表进行初始化为空表。