跳转执行-故障注入测试

时间:2024-07-07 18:23:25
【文件属性】:

文件名称:跳转执行-故障注入测试

文件大小:237KB

文件格式:PDF

更新时间:2024-07-07 18:23:25

gdb

15.1、修改变量值 修改被调试程序运行时的变量值,在 GDB中很容易实现,使用 GDB的 print 命令即可完成。如: (gdb) print x=4 x=4这个表达式是 C/C++的语法,意为把变量 x的值修改为 4,如果你当 前调试的语言是 Pascal,那么你可以使用 Pascal的语法:x:=4。 在某些时候,很有可能你的变量和 GDB中的参数冲突,如: (gdb) whatis width type = double (gdb) p width $4 = 13 (gdb) set width=47 Invalid syntax in expression. 因为,set width是 GDB的命令,所以,出现了“Invalid syntax in expression” 的设置错误,此时,你可以使用 set var命令来告诉 GDB,width不是你 GDB的 参数,而是程序的变量名,如: (gdb) set var width=47 另外,还可能有些情况,GDB并不报告这种错误,所以保险起见,在你 改变程序变量取值时,最好都使用 set var格式的 GDB命令。 15.2、跳转执行 一般来说,被调试程序会按照程序代码的运行顺序依次执行。GDB 提供了 乱序执行的功能,也就是说,GDB 可以修改程序的执行顺序,可以让程序执行 随意跳跃。这个功能可以由 GDB的 jump命令来完: jump 指定下一条语句的运行点。可以是文件的行号,可以是 file:line 格式,可以是+num这种偏移量格式。表式着下一条运行语句从哪里开始。 jump


网友评论