1 / 63
文档名称:

C语言动态分配内存ppt课件.ppt

格式:ppt   大小:1,377KB   页数:63页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

C语言动态分配内存ppt课件.ppt

上传人:相惜 2021/5/23 文件大小:1.34 MB

下载得到文件列表

C语言动态分配内存ppt课件.ppt

相关文档

文档介绍

文档介绍:1 动态内存分配基础 2 动态内存分配实例 3 动态内存分配进阶
C语言动态分配内存
1
ppt课件完整
动态分配内存基础
2
ppt课件完整
动态分配内存概述
什么时候需要动态分配内存?
实例:顺序对一批文件进行解析,但是不知道文件的大小,如何建立缓冲区?
3
ppt课件完整
malloc函数
malloc函数原型:
void * malloc(size_t n);
n是要分配的内存的大小,返回值是分配内存的块的首地址
4
ppt课件完整
malloc函数
例1:使用malloc函数分配一个可以容纳10个整型元素的内存空间,并将其用作一个整型数组
5
ppt课件完整
malloc函数
关键代码:
int * array;
array = (int *)malloc(10 * sizeof(int));
注意:内存大小不能写成数组元素的个数
6
ppt课件完整
malloc函数
例2:定义一个结构
struct test{
int a;
char b;
int c[10];
};
使用malloc函数分配一个此种结构类型的对象
7
ppt课件完整
malloc函数
关键代码:
struct test * p;
p = (struct test *)malloc(sizeof(struct test));
8
ppt课件完整
需要注意的问题
(1)malloc函数是一个库函数,它并不是C语言中的关键字:
需要头文件<>才可以使用该函数
并不是所有的平台都可以使用该函数,尤其是一些单片机系统
9
ppt课件完整
需要注意的问题
(2)指针类型转换是必须的,关系到接收分配好的内存块的地址可以向前看多少字节。
如果不做指针类型转换会怎么样?
void * 指针存在的意义。
10
ppt课件完整