我的断点指向一个变量。 (指向某处。我能弄清楚某处是属于堆还是堆栈?)
有没有办法找到堆栈的开头和结尾?有没有办法找到堆的开头和结尾?
答案 0 :(得分:7)
使用info proc mappings
获取有关内存布局的/proc
信息。
答案 1 :(得分:0)
我认为gdb不会直接告诉你,但你可以比较一下地址,找出它落入的范围。您必须查看库源代码才能找到它,但堆管理器通常会有一些内部变量来跟踪堆的位置。
答案 2 :(得分:0)
根据您的编译器,调试信息中可能包含__stack
或__stack_end
等符号。如果是这样,您可以使用这些符号将指针与它们进行比较。