从零学编程- C语言-第18天

1.malloc

2.free

3.calloc

4.malloc 跟calloc 一个不能自动初始化一个能自动初始化 使用那个无所谓,看自己

calloc = malloc+memset

5.realloc

​​​​​​​

​​​​​​​

6.申请空间是需要浪费时间的,频繁的添加空间耗时间,需要操作系统放下活先去给你开辟空间

频繁申请也会导致内存碎片,影响内存占用

所以有内存池的概念 后期细学内存池 内存池是程序自己维护的一段内存空间

7.realloc 也可以实现malloc的功能,将第一个参数改为空指针就行

8.常见的动态内存错误

使用free释放其中一部分是做不到的

倒计时:12天

相关推荐
java修仙传21 分钟前
每日一题,力扣560. 和为 K 的子数组
算法·leetcode
yue00826 分钟前
C# Directory的用法介绍
开发语言·c#
ada7_43 分钟前
LeetCode(python)——148.排序链表
python·算法·leetcode·链表
雨落秋垣1 小时前
手搓 Java 的用户行为跟踪系统
java·开发语言·linq
点云SLAM1 小时前
点云配准算法之-Voxelized GICP(VGICP)算法
算法·机器人·gpu·slam·点云配准·vgicp算法·gicp算法
Bona Sun1 小时前
单片机手搓掌上游戏机(二十)—pico运行doom之编译环境
c语言·c++·单片机·游戏机
爱丽_2 小时前
深入理解 Java Socket 编程与线程池:从阻塞 I/O 到高并发处理
java·开发语言
Albert Edison2 小时前
【项目设计】C++ 高并发内存池
数据结构·c++·单例模式·哈希算法·高并发
我真不会起名字啊2 小时前
C、C++中的sprintf和stringstream的使用
java·c语言·c++
资深web全栈开发2 小时前
LeetCode 3625. 统计梯形的数目 II
算法·leetcode·组合数学