动态内存分配malloc() realloc() calloc();free()

头文件#include <stdio.h>

(?*)malloc(内存大小(通常用sizeof计算))

(?*)calloc(元素个数,每个元素大小)

realloc(一个包含地址的指针,新的内存字节数)

free(指针)释放内存

使用动态分配的内存的基本规则

避免分配大量的小内存块。分配堆上的内存有一些系统开销,所以分配许多小的内存块比分配几个大内存块的系统开销大。 仅在需要时分配内存。只要使用完堆上的内存块,就释放它。 总是确保释放已分配的内存。在编写分配内存的代码时,就要确定在代码的什么地方释放内存。 在释放内存之前,确保不会无意中覆盖堆上分配的内存的地址,否则程序就会出现内存泄漏。在循环中分配内存时,要特别小心。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • C语言中内存分配 在任何程序设计环境及语言中,内存管理都十分重要。在目前的计算机系统或嵌入式系统中,内存资源仍然是...
    一生信仰阅读 1,204评论 0 2
  • 逻辑上的分区 栈区 堆区 静态区 常量区 代码区 代码区,常量区,静态区,堆区,栈区这个排列顺序按照地址由小到大排...
    MathCat阅读 632评论 1 0
  • 内存管理 简述OC中内存管理机制。与retain配对使用的方法是dealloc还是release,为什么?需要与a...
    丶逐渐阅读 2,014评论 1 16
  • 清茶园三日静心营 宗旨: 分享文化、唤醒精神灵魂; 关爱、温暖,人心所需; 养生、健康是身体之根本。 融儒释道文化...
    谷应阅读 495评论 1 2