【Linux上的C++】gdb学习笔记,持续更新

背景:多年的windows上的C++开发经验,熟练使用vs,现在想学习Linux上的C++

涉及到的工具:gcc g++ gdb

 

  • 编译的时候指定编译器支持C++11
g++ -std=c++11 test.cpp -o result
  • 如何开始调试?

编译的时候,要加一个-g的参数;然后执行gdb命令开始调试

g++ -std=c++11 -g test.cpp -o result

gdb result

运行后,提示符变为(gdb),可以在里面输入各种命令来进行调试

  • 如何带参数启动程序?

下面这种方法是无效的

gdb result arg1 arg2

需要先用上面的方法启动调试,然后在gdb提示符下,输入这样的命令:

(gdb) set args arg1 arg2
  • 如何查看代码、设置断点、查看断点?

在(gdb)提示符下:

查看代码: l

设置断点: break 

查看断点: info break

删除断点: delete n (n是info中列出的序号)

  • 如何Step in、step over、step out,对应vs的F11、F10、Shift+F11

在(gdb)提示符下:

开始调试(F5): r

step in(F11): step

step over(F10): next

step out(shift+F11): finish

继续调试(F5):continue

 

  • 如何查看变量值,设置变量值,查看堆栈

在(gdb)提示符下:

打印变量值: p nCount

查看变量的类型: ptype strName

设置变量值: set nCount=20

查看堆栈: bt

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值