打开
在附件里打开终端。
常用命令
- ls
终端默认的是系统储存的根目录,到达桌面首先使用命令“ls”,显示此根目录下的所有文件。 - cd Desktop/OI/work //格式:cd 路径
打开源程序对应的文件夹。 - g++ -o ex1 ex1.cpp -g //格式:g++ -o 文件名 文件名.cpp -g
编译程序。 - gdb ex1 // 格式:gdb 文件名
初始化,若成功则出现一堆英文,最后两行如下:
done.
(gcd) - r
运行程序,紧接着手动输入样例输入。 - n
单步跟踪。//单步跟踪时遇到断点继续执行。 - s
单步跟踪。调用进入函数体内部。 - f
退出函数。 - u
单步跟踪。运行程序直到退出循环体。 - l
查看源码,一次出10行,若想继续查看后面的,再次重复输入l。 - l dfs //格式:l 函数名
查看函数源码。 - set listsize n
设定一次查看n行源码。 - show listsize
出现一次查看的源码行数。 - b n
给第n行设置断点。 - info b
查看当前设置的所有断点。 - b n if b!=0 //格式:b 行号 条件
设置条件断点 。 - ignore n x
忽略断点号为n的停止条件x次 。 - watch a /a-1 //格式:watch 变量名/表达式
当变量/表达式值发生变化时,停住程序。 - rwatch a /a-1 //格式:rwatch 变量名/表达式
当变量/表达式被读入时,停住程序。 - awatch a /a-1 //格式:awatch 变量名/表达式
当变量/表达式被输出时,停住程序。 - info watchpoints
查看当前所设置的所有观察点。 - clear/delete 7/dfs //格式:clear/delet 行数/函数名
删除断点。 - commands
为断点设定命令,当程序被该断点停住时,gdb会依次运行命令列表中的命令。紧接着输入命令,格式如下:
命令1;
命令2;
end - c
继续运行程序。 - info program
查看程序的是否在运行,进程号,被暂停的原因。 - p a/a+1 //格式:p 变量/表达式
查看变量/表达式的值。 - p *a@7 //格式:p *数组名@长度
查看数组里的值。 - display a //格式:display 变量名
每次到断点时自动显示变量的值。 - info display
查看每次到断点时自动显示值的变量。 - delete display 7/7 8/ 7-10 //格式:delete display 自动显示编号(多个之间加空格,一段用-连接头尾)
删除每次到断点时自动显示值的变量。 - whatis a //格式:whatis 变量名
查询变量类型。 - return 0 //格式:return 返回值
强制结束当前函数的执行,并立即返回。 - exit
关闭终端。