存储学生学号、姓名、成绩的单链表结点类型定义:
typedef Struct{ char num[8]; //数据域 char name[8]; //数据域 int score; //数据域 }Elem Type; typedef struct Lnode{ ElemType data; //数据域 struct Lnode *next; //指针域 }
单链表的基本操作:
初始化(创建一个空表)
status InitList_L(LinkList &L){ L = new Lnode; //生成一个新节点作头结点,用头指针L指向头结点,L为指针变量 L->next=NULL; //将头结点的指针域置空 return ok; }
判断链表知否为空(只需判断链表的指针域是否为空即可)
int ListEmpty(LinkList){ if(L->next) return 0; //非空 else return 1; }
单链表的销毁:(是将所有的结点包括头指针全部销毁,不存在)
Status DESTROYlist_L(LinkList &L){ //销毁单链表L Lnode *p; //定义指针变量,用于指向要销毁的结点 while(L){ //因为要一个结点一个结点的移动,所以要借助循环来移动 p=L; //让指针P指向L当前所指向的结点 L=L->next; delept p; } return OK; //删除完毕 }
清空链表 不啦不啦 。。。。搜搜吧,不想敲了
指针指向头结点 使用 P=L;语句
指针指向首元结点 使用 P = L->next;语句
p指向下一结点: p=p->next;
标签:结点,单链,return,定义,指向,next,基本操作,指针 From: https://www.cnblogs.com/zheng-yumeng/p/16760481.html