有时候需要查看coredump文件中数组元素的值,数量少可以手动查看,如果数组很大就需要自动化处理。
1、gdb变量定义
set variable $i = 0
variable 可以省略,或者是开头至少两个字母的部分拼写,比如:va、var、vari。
修改它的值同样需要使用set语句,比如:set $i = $i + 1
。
gdb变量前边必须有$,否则会认为是程序中的变量。
2、gdb支持的控制结构
判断:if ... else ... end
循环:while ... end
,注意打断和继续循环是:loop_break 和 loop_continue
3、数组元素的输出
就像普通代码一样:
set variable $i = 0while p arr[$i] set $i = $i + 1 if $i >= arr_len loop_break endend
也可以是
set variable $i = 0while $i < arr_len p arr[$i] set $i = $i + 1end
还可以利用条件表达式只输出自己关心的元素。
4、性能
<