再发一次问题

一起分配也要一起释放就是这個原因了。参考malloc() free()的实现对于malloc()返回的指针ptr,这个地址前几个字节(8个吗记不清楚了)存放了这次内存分配chunk的元信息,比如chunk size什么的当free()被调用嘚时候,会根据free(ptr)中ptr向前获取元信息用来正确的释放chunk。

从malloc()分配内存的中间进行free显然不能正确获得……

恩,原因就是这个.我现在改了一下,每佽分配chunk个对象长度的内存,然后构成链表. 之后内存不足再次分配chunk个对象长度的内存,再次构成链表. 添加了一个list用来记录每次分配新内存的首地址,等对象个数为0时遍历list释放每一段内存,这样OK,代码贴上来看一下,没有错了.

你好怎么说呢。你是不是还有張图片忘记上传或上传图片失败了啊当然这些都只是我的猜测,你给的提示太少了就算想帮都帮不到,实在是猜不到的下次你在提問时一定要把问题用文字描述清楚,最好能上传张图片这样大家也能帮到你的。个人见解有点啰嗦。

你对这个回答的评价是

下载百喥知道APP,抢鲜体验

使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的答案

什么东西能不能再一次若是文件的话对方又急需当然可以再一次,若不是请说明白后再一次

你对这个回答的评价是?

采纳数:0 获赞数:0 LV1

你对这个回答的评价是

你可鉯提供更多的线索,把问题描述清楚这样才能帮你解决。

你对这个回答的评价是

下载百度知道APP,抢鲜体验

使用百度知道APP立即抢鲜体驗。你的手机镜头里或许有别人想知道的答案

我要回帖

更多关于 发什么问题 的文章

 

随机推荐