1.为什么要有动态内存分配
2.malloc和free
2.1 malloc
开辟失败:
2.2 free
错误使用:
3.calloc和realloc
3.1 calloc
3.2 realloc
4.常见的动态内存错误
4.1 对NULL指针的解引用操作
4.2 对动态开辟空间的越界访问
4.3 对非动态开辟内存使用free释放
4.4 使用freee释放一块动态开辟内存的一部分
4.5 对同一块动态内存多次释放
4.6 动态开辟内存忘记释放(内存泄露)
5.动态内存经典笔试题分析
5.1 题目1
修改:
(1)
(2)
5.2 题目2
5.3 题目3
内存泄露
修改:
5.4 题目4
提前释放
修改:
6.柔性数组
6.1 柔性数组的特点:
6.2 柔性数组的使用
6.3 柔性数组的优势
代码1:
代码2: