9 c语言: 内存分配的方法

感谢各位观看这篇文章,点赞、收藏、你的支持是我前进的动力!

感谢你的阅读,专栏文章持续更新!关注不迷路!!

文章目录

    • 1 为什么使用动态内存分配
    • 2 memset与memcpy
      • memset
      • memcpy
      • memset 只能初始化为0
    • 3 memcpy与memmove
      • 数组拷贝
    • 4 malloc和free
    • 5 calloc和realloc
    • 6 使用动态分配的内存
    • 7 常见的动态内存分配错误
      • 内存泄漏
    • 8 内存分配实例
      • 读取、排序和打印一列整型值
      • 字符串复制
      • 存货系统
      • 编写calloc函数
      • 动态分配的数组
      • 动态分配的链表

1 为什么使用动态内存分配

声明数组时,必须用一个常量指定数组的长度。但是,数组的长度常常在运行时才知道,这是因为它所需要的内存空间取决于输入数据。

通常声明一个较大的数组,它可以容纳可能出现的最多元素。

  • 如果程序需要使用的元素数量超过了声明的长度,它就无法处理这种情况。
  • 如果程序实际需要的元素数量比较少时,巨型数组的绝大部分内存空间都浪费了。

2 memset与memcpy

me

你可能感兴趣的:(c语言,数据结构,算法)