当我们需要做一个成绩管理系统,人数可能为全校学生,也可能为一个班的学生,当我
们开辟一个班的数组大小时,如果要存储整个学校的人数时,会出现内存不够用的情
况;当我们开辟全校人数大小的数组时,输入一个班人数的大小时,会出现内存浪费的
情况。
为了应对上述问题,我们引入malloc函数。
malloc时动态内存分配函数,用于申请一块连续的指定大小的内存块区域以void*类型
返回分配的内存区域地址
malloc函数原型
extern void *malloc(unsigned int num_bytes);
意为分配长度为num_bytes字节的内存块
malloc函数头文件
#include<malloc.h>
malloc函数返回值
如果分配成功则返回指向被分配内存的指针,否则返回空指针NULL。
malloc函数使用注意事项
malloc函数的返回的是无类型指针,在使用时一定要强制转换为所需要的类型。
**(敲黑板)重点:在使用malloc开辟空间时,使用完成一定要释放空间,如果不释放
会造内存泄漏。
在使用malloc函数开辟的空间中,不要进行指针的移动,因为一旦移动之后可能出现
申请的空间和释放空间大小的不匹配