![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
链表
落禅
风吹柳叶遮黄雀,薄翅不知已落蝉
展开
-
2020-12-22
链表结点的删除: 向链表中添加结点之后,如果希望删除结点,该怎么办呢?还是通过上次小朋友手拉手进行比喻 例如:队伍中一个小朋友想离开队伍,并且这个队伍没有断开的方法就是他旁边的小朋友将手拉起来 void Delete(struct student* pHead, int ilndex)//定义一个函数传入头指针和要删除结点的位置 { struct student* pTemp;//定义一个零时结点 struct student* pPre;//删除结点位置前的结点 pTemp = pHead;原创 2020-12-22 23:48:25 · 148 阅读 · 3 评论 -
2020-12-21
链表的输出与插入 1.链表的输出: 链表的输出首先要自定义一个函数,传入链表的头指针,定义一个零时结点来遍历整个链表,完整代码和详细注解如下: void Print(struct student* pHead)//将头结点作为函数参数 { int ilindex = 1;//定义一个变量来记录打印信息的个数 struct student* pTemp;//定义一个零时结点来遍历循环打印整个链表 pTemp = pHead;//令零时结点为头结点 printf("该链表现有%d个成员\n", iCou原创 2020-12-21 23:49:50 · 153 阅读 · 4 评论 -
2020-12-20
链表的建立是一个动态过程,动态建立结点时要为其分配内存,所以在学习建立链表之前要复习一下关于动态分配的函数: malloc函数:void*malloc(unsigned int) 作用:该函数的作用是在内存中动态的分配一块size大小的内存空间,malloc函数会返回一个指针该指针指向分配的内存空间,如果发生错误,则返回NULL calloc函数:void*calloc(unsigned n,unsigned size) 作用:该函数的作用是在内存中动态的分配n个长度为size大小的连续内存空间数组,原创 2020-12-20 22:00:19 · 1959 阅读 · 7 评论