一、概念与结构
1、节点
结点的组成主要有:当前结点要保存的数据和保存下一个节点的地址(指针变量)

图中指针变量 plist 保存的是第一个结点的地址,我们称 plist 此时'指向'第一个结点。
链表中每个结点都是独立申请的(如果需要插入数据时才去申请一块结点的空间),我们需要通过指针变量来保存下一个结点位置才能从当前结点找到下一个结点。

2、链表的性质
【链表结构在逻辑上是连续的,在物理结构上不一定连续。
【结点一般是从堆上申请的。
【从堆上申请来的空间,是按照一定策略分配出来的,每次申请的空间可能连续,可能不连续。
二、实现单链表
1、创立文件

2、定义链表的结构
【SList.h】
//定义链表 (结点) 的位置
typedef int SLTDataType;
typedef struct SListNode {
SLTDataType data;
struct SListNode* next;
}SLTNode;
void SLTPrint(SLTNode* phead);
3、打印函数
【SList.h】
//打印函数 void SLTPrint(SLTNode* phead);
【SList.c】
//打印函数 void SLTPrint(SLTNode* phead) {
SLTNode* pcur = phead;
while (pcur) {
printf(, pcur->data);
pcur = pcur->next;
}
();
}



