2016 - 2024

感恩一路有你

malloc一定要free吗 为什么malloc()和free()函数会产生很多内存碎片?

浏览量:1448 时间:2021-03-10 14:44:47 作者:admin

为什么malloc()和free()函数会产生很多内存碎片?

首先,碎片分为内部碎片和外部碎片。内部碎片是指malloc函数在块内部生成的信息,用于记录当前分配的块在实现时的信息。因此,malloc之后实际占用的内存大小通常大于所需大小(这也与内存对齐有一定关系)。外部碎片是我在楼上说的。重复使用后,会在堆中产生不连续的可用内存块,即外部碎片。如果需要,我可以提供一个源代码来模拟malloc进程

malloc一定要free吗 malloc几次free几次吗 malloc与free

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。