gdb
需要在使用gcc或g++编译时加上-g参数,这样生成的可执行文件才可以使用gdb调试 常用命令: backtrace命令可以显示出函数调用栈(使用up和down可以上下移动调用层数) info命令可以查看比如当前状态下寄存器的信息(info registers)或者断点的信息(info breakpoints) 可以设置有条件的断点(如break funcName if n==3) watch
valgrind
valgrind可以用来调试检查程序中内存相关的问题 官网 不过可惜的是valgrind不支持windows,仅支持在linux平台上进行安装使用
https://www.valgrind.org/ ↩︎
https://stackoverflow.com/questions/38019525/getting-valgrind-on-windows-7 ↩︎