1、结构体与指向结构体的指针,结 构 体,定义:用户自定义的一种数据结构,将不同类型 的数据组合成一个有机的整体以便于引用。在一个 组合项中包含若干个类型相同或不同的数据项。其 一般形式为: struct 结构体名 成员列表 ; 如: struct evint Type;int occuTime;struct ev *next; ;,typedef,EVENT,结构体变量的引用:结构体变量名.成员名 指向结构体变量的指针:一个结构体变量的指针就是该变量所占据的内存段的起始地址。如: EVENT ev;EVENT *p;*p=ev p=&ev 结构体指针变量的引用:(*p).成员名p-成员名,用指针
2、处理链表,链表是一种常见的重要的数据结构,通常是动态进 行存储分配。一个链表一般有一个“头指针”,链表 中的每个元素称为一个“结点”,每个结点包含两个 部分:一个是用户需要的实际数据,另一个是下一 个结点的地址。 处理动态链表需要的函数有:void *malloc(unsigned int size);void free(void *p);,简单链表的基本操作,链表的建立与输出 链表的插入 链表的删除 typedef struct node int data;struct node *next; Link;,链表的建立(初始化head=NULL) 首结点的建立: 中间结点的处理: 尾结点的处理:链表的插入 链表为空时: 链表不为空时: 插入为首结点 插入为中间结点 插入为尾结点,head=p; q=p,q-next=p; q=p;,q-next=NULL;,head=p;q=p;,new-next=head;head=new,new-next=p;q-next=new,p-next=new;new-next=NULL,