Linux C —— 动态内存

来源:互联网 发布:周朝 历史 知乎 编辑:程序博客网 时间:2024/05/16 18:42

目录

  • 目录
  • 内存分配
  • 动态静态内存区别
    • CPU资源
    • 分配位置
    • 支持
    • 分配类型
    • 控制权

内存分配

内存分配与释放是配对的。
有分配,必须有释放。
造成问题:
1.内存泄漏;
2.内存耗尽

动态/静态内存区别:

1.CPU资源

静态内存分配 → 编译时完成 → 不占CPU资源;
动态内存分配 → 程序运行时完成 → 占CPU资源。

2.分配位置

静态内存 → 栈上分配;
动态内存 → 堆上分配。

3.支持

动态内存分配 → 需要指针和引用数据类型的支持;
静态内存分配 → 不需要指针和引用数据类型的支持。

4.分配类型

静态内存分配 → 计划分配内存
动态内存分配 → 按需分配

5.控制权

静态内存分配 → 编译器动态内存分配 → 程序员。