首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在GDB中,如何找出哪些malloc在堆上的地址?

在GDB(GNU调试器)中,要找出哪些malloc在堆上的地址,可以使用以下步骤:

  1. 首先,确保在编译程序时使用-g标志,以便在调试时生成符号信息。
  2. 在GDB中,使用break命令设置断点,例如:break malloc这将在每次调用malloc时中断程序执行。
  3. 使用commands命令设置断点命令,例如:commands 1 info malloc-history continue end这将在每次malloc被调用时显示内存分配历史记录。
  4. 使用run命令运行程序,GDB将在每次malloc被调用时执行断点命令,显示内存分配历史记录。
  5. 使用info malloc-history命令查看当前堆上的内存分配情况,包括地址、大小和调用栈等信息。
  6. 使用delete命令删除之前设置的断点,例如:delete 1

通过这些步骤,您可以在GDB中找出哪些malloc在堆上的地址,并了解它们的分配情况。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券