malloc一定要free吗 为什么malloc()和free()函数会产生很多内存碎片?
浏览量:2231
时间:2021-03-12 09:17:54
作者:admin
为什么malloc()和free()函数会产生很多内存碎片?
首先,碎片分为内部碎片和外部碎片。内部碎片是指malloc函数在块内部生成的信息,用于记录当前分配的块在实现时的信息。因此,malloc之后实际占用的内存大小通常大于所需大小(这也与内存对齐有一定关系)。外部碎片是我在楼上说的。重复使用后,会在堆中产生不连续的可用内存块,即外部碎片。如果需要,我可以提供一个源代码来模拟malloc进程
malloc一定要free吗 malloc几次free几次吗 malloc和free异常
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。