指针与链表ppt课件.ppt
《指针与链表ppt课件.ppt》由会员分享,可在线阅读,更多相关《指针与链表ppt课件.ppt(14页珍藏版)》请在三一办公上搜索。
1、第10章 指针与链表,1,分 析,在各种信息管理系统的程序设计中,常常需要存储大量的数据记录。 如果使用结构体数组会带来哪些问题?,2,解决办法: 采用动态存储分配的数据结构链表,10.1 存储空间的分配与释放,C语言标准函数库stdlib.h中提供了四个函数,用于实现内存的动态分配和释放。 分别为:malloc(),calloc(),realloc()和free().1. malloc 函数,void *malloc (unsigned int size);,作用是: 在内存的动态存储区申请一个长度为size的连续空间,并返回存储空间的起始地址;如果没有足够的内存空间可分配,则返回空指针NU
2、LL.,3,用法:由于函数返回类型为void,因此如果要将函数返回的指针赋给其它类型的指针变量,应当进行强制类型转换。,例如: int *p=(int *)malloc(sizeof(int);struct stud *p=(struct stud *)malloc(sizeof(struct stud);,4,2.calloc函数,void *calloc(unsigned n,unsigned size);,作用是: 在内存的动态区分配n个长度为size的连续空间,并返回该存储空间的起始地址。 主要用于为动态数组申请存储空间。,例如:Int *p=(int *)calloc(10,size
3、of(int);,5,3. free函数,void free(void *p);,作用是: 释放指针变量p指向的存储空间.,注意:p只能是程序中此前最后一次调用malloc或calloc函数所返回的地址。,例如:int *p,*q=(int *)calloc(10,sizeof(int); p=q; q+; free(p);,6,10.2 链式存储结构链表,链表可以动态的进行存储分配,每一个元素称为一个“结点”,每个结点都包括两部分:,head: 头指针,存放一个地址,指向链表中的第一个结点.,1.数据域:存储用户需要的实际数据;,2.指针域:指向下一个结点的地址.,表尾: 它的地址部分放一个
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 指针 ppt 课件
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-1869516.html