赞
踩
(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹)
提示:本章的对应项目为学生成绩管理系统 ,大家学完单链表以后就可以尝试去做一个学生成绩管理系统啦!(http://t.csdn.cn/1VrMy)
目录
链表是由n个结点链结成,第一个结点的存储位置叫做头指针,最后一个结点的指针为“空” 结点包括数据域和指针域。
- //创建一个结点
- typedef struct monster{
- //数据域
- int id; //怪物编号
- char *name; //怪物名称
- //指针域
- struct monster *pNext;//指向下一节点的指针
- } Monster;
在给结构体赋值时,具体形式如下:
我们来画个图便于大家理解:
如图所示,每一个元素的指针域都保存的是下一个元素的地址,而最后一个元素的指针域是空指针NULL;每一个元素串联起来的形式就形成了一个链表。
头指针:链表中第一个结点的存储位置。
头结点:在单链表的第一个结点前附设的一个结点。
两者的异同点:
链表的每一个结点中只包含一个指针域。
- //单链表
- typedef struct student{
- int id; //学生编号
- char *name; //学生名称
- //指向下一节点的指针
- struct student *pNext;
- } Student;
如下情况则不是单链表:
- //不属于单链表
- typedef struct student{
- int id; //学生编号
- char *name; //学生名称
- //指向下一节点的指针
- struct student *pNext;
- struct student *qNext;
- } Student;
获取第i个结点的数据
声明一个结点指针p指向链表第一个结点声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。