malloc/free函数

Posted yinguojin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了malloc/free函数相关的知识,希望对你有一定的参考价值。

一、malloc

  函数原型:void *malloc(unsigned int size);

  功       能:在内存的动态存储区中分配一个长度为size的连续空间。

  返  回 值:指向所分配的连续存储域的起始地址的指针,若失败,返回NULL

二、free 

  函数原型:void free(void *p);

  功       能:释放指针p所指向的内存区

  返  回 值:无

注意:判断内存是否分配成功是重点。
malloc函数返回类型时void *, 只会是一个合法的指针或者NULL指针.
 1 int *p = NULL;
 2  
 3 if ((p = (int *)malloc(size)) != NULL)
 4 {
 5     //正常情况,申请成功
 6 }
 7 else
 8 {
 9     //这里处理未申请成功的情况
10 }
11 free(p);

 

以上是关于malloc/free函数的主要内容,如果未能解决你的问题,请参考以下文章

C语言中已经有了malloc和free,为啥还需要new和delete?

malloc/free函数

C++—new/delete/malloc/free详解

动态内存函数+经典笔试题@动态内存管理---malloc +free + calloc + realloc

malloc/free与new/delete的区别与联系

new和malloc的区别