gdb打印c++ std::vector元素内容
清泛原创
使用GDB调试程序或coredump时,直接 p vec 打印的是vector内部成员的信息,不能直观输出元素的内容。
通过打印内部元素地址内容的方式,查看vector元素内容,不限gcc版本:
通过打印内部元素地址内容的方式,查看vector元素内容,不限gcc版本:
(gdb) p *(vec._M_impl._M_start)@3
$1 = {5, 2, 0}
(gdb) p *(vec._M_impl._M_start+0)
$2 = 5
(gdb) p *(vec._M_impl._M_start+1)
$3 = 2
vector的大小貌似只能尝试指定,不能动态计算。
上一篇:Eclipse CDT利用gdbserver远程调试
下一篇:c++11 std::call_once只调用一次函数,类似单例模式