Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/140.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 查找指向gdb中地址的所有变量_C++_Debugging_Crash_Gdb_Coredump - Fatal编程技术网

C++ 查找指向gdb中地址的所有变量

C++ 查找指向gdb中地址的所有变量,c++,debugging,crash,gdb,coredump,C++,Debugging,Crash,Gdb,Coredump,就上下文而言,我的特殊情况如下:我得到了一个segfault,正在分析内核;堆栈跟踪显示了名为exit的程序,但在某个向量的d'tor内,该程序在完成之前崩溃;我可以得到向量的地址,但我不熟悉代码,也不知道它对应的变量是什么;我想找出哪些变量指向这个向量来检查相关代码。有什么建议吗?您可以在崩溃之前创建一个断点,并打印std::vector中的所有变量 print *(your_vector._M_impl._M_start)@your_vector.size() 例如: 有std::vec(

就上下文而言,我的特殊情况如下:我得到了一个segfault,正在分析内核;堆栈跟踪显示了名为exit的程序,但在某个向量的d'tor内,该程序在完成之前崩溃;我可以得到向量的地址,但我不熟悉代码,也不知道它对应的变量是什么;我想找出哪些变量指向这个向量来检查相关代码。有什么建议吗?

您可以在崩溃之前创建一个断点,并打印std::vector中的所有变量

print *(your_vector._M_impl._M_start)@your_vector.size()
例如:

std::vec(3)您将编写
print*(vec.\u M\u impl.\u M\u start)@3

我可以得到向量的地址。。。我想知道是什么 变量指向这个向量

拥有某个变量的地址,您可以使用
info-symbol
命令打印变量名称,如下所示:

(gdb) info symbol 0x4005BDC

请参阅gdb文档中的内容。

如果操作系统适合:请尝试Valgrind您所说的“变量指向此向量”是什么意思。你是指持有向量对象地址的指针变量吗?@ AlxyTePyyaKoV:这是当前值为向量的C++变量