关于malloc和free函数?

attachments-2021-09-COVVxMmu6142e07774246.jpg老师说这个free函数无法释放malloc分配的内存空间是因为不知道具体的N是多少。

那么假设这个free函数有另外一个参数,把N值传入进去,是不是可以释放掉内存空间了呢

请先 登录 后评论

1 个回答

百问网_赵老师
擅长:嵌入式开发

free无需手动指示大小,不是怕你不小心填错,而是事实上你很难填对。这是因为,尽管在你告诉了malloc你要多少空间,但malloc真正分配了多少只有它自己知道。例如,你向malloc要了999字节,但某人写的malloc分配的最小粒度是1024字节,那么你会得到一个1024字节的空间。


请先 登录 后评论
  • 1 关注
  • 0 收藏,162 浏览
  • 逍遥 提出于 2021-09-16 14:14

相似问题