配置GDB以支持查看stl容器数据
来源:互联网 发布:知乎 粮食 编辑:程序博客网 时间:2024/05/01 20:35
1. 下载 http://www.yolinux.com/TUTORIALS/src/dbinit_stl_views-1.03.txt
2. #cat dbinit_stl_views-1.03.txt >> ~/.gdbinit
3. 若正处于gdb中,运行命令: (gdb) source ~/.gdbinit
4. 例如,如下代码: bugging.cpp
# include < vector >
using namespace std ;
int main( )
{
vector < int > vec;
vec. push_back( 2) ;
vec. push_back( 3) ;
vec. push_back( 4) ;
return 0;
}
编译:#g+ + - o bugging - g bugging. cpp
gdb调试:
# gdb bugging
GNU gdb 6. 8
Copyright ( C) 2008 Free Software Foundation, Inc.
License GPLv3+ : GNU GPL version 3 or later < http: //gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-slackware-linux" . . .
( gdb) help pvector
Prints std : : vector < T> information.
Syntax: pvector < vector > < idx1> < idx2>
Note: idx, idx1 and idx2 must be in acceptable range [ 0. . < vector > . size( ) - 1] .
Examples:
pvector v - Prints vector content, size, capacity and T typedef
pvector v 0 - Prints element[ idx] from vector
pvector v 1 2 - Prints elements in range [ idx1. . idx2] from vector
( gdb) break main
Breakpoint 1 at 0x80485c6: file bugging. cpp, line 6.
( gdb) run
Starting program: / root/ learn/ c+ + / bugging
Breakpoint 1, main ( ) at bugging. cpp: 6
6 vector < int > vec;
( gdb) n
7 vec. push_back( 2) ;
( gdb)
8 vec. push_back( 3) ;
( gdb) pvector
Prints std : : vector < T> information.
Syntax: pvector < vector > < idx1> < idx2>
Note: idx, idx1 and idx2 must be in acceptable range [ 0. . < vector > . size( ) - 1] .
Examples:
pvector v - Prints vector content, size, capacity and T typedef
pvector v 0 - Prints element[ idx] from vector
pvector v 1 2 - Prints elements in range [ idx1. . idx2] from vector
( gdb) pvector vec
elem[ 0] : $1 = 2
Vector size = 1
Vector capacity = 1
Element type = int *
( gdb) n
9 vec. push_back( 4) ;
( gdb)
10 return 0;
( gdb) pvector vec
elem[ 0] : $2 = 2
elem[ 1] : $3 = 3
elem[ 2] : $4 = 4
Vector size = 3
Vector capacity = 4
Element type = int *
( gdb)
5. 默认情况下gdb不能用[]查看stl容器的数据元素,提示如下错误:
( gdb) print vec[ 0]
One of the arguments you tried to pass to operator [ ] could not be converted to what the function wants.
- 配置GDB以支持查看stl容器数据
- [ZZ]配置GDB以支持查看stl容器数据
- 配置GDB以支持查看stl容器数据
- 配置GDB以支持查看stl容器数据
- 配置GDB以支持查看stl容器数据
- 配置GDB以支持查看stl容器数据
- 配置GDB以支持查看stl容器数据
- gdb 查看 STL 容器值
- gdb 查看 stl容器 zz
- gdb调试-查看STL容器
- GDB中查看STL容器中数据的方法
- 配置GDB支持STL调试
- 支持stl容器的gdb自定义命令
- 在gdb中查看stl容器
- gdb查看stl容器中的内容
- gdb中查看stl容器内容
- gdb查看stl容器中的内容
- GDB对STL容器的查看
- c# 磁盘调度算法:-最短寻道时间优先
- linux下查看所有用户及所有用户组
- FTP协议
- 手上青春还剩多少
- C#播放MP3音乐文件
- 配置GDB以支持查看stl容器数据
- Ubuntu 12.04安装Java开发环境
- Java学习笔记25:Java中MD5使用
- libgdx 与 android studio
- Java 学习笔记14:Spring 数据库数据源DBCP配置说明
- 系统支持的集中对话框
- 解决PLSQL查不到带中文条件的记录
- DevExpress右键菜单使用小记
- Linux 使用root 上传