gdb中的define命令

可以使用define命令达到类似于display的效果:比如每ni后显示当前5条指令:
define s5

ni
x/5i $pc
end

甚至可以手动传入要显示指令的条数:
define s

ni
x/arg0ipc
end

然后这样使用:s 5

我们还可以再加点料,ni后自动显示某些reg的值:
define s

ni
printf “rax:%d rbx:%x”,rax,rbx
x/5i $pc
end

时间: 2024-10-03 11:44:28

gdb中的define命令的相关文章

GDB中运行UNIX的shell程序

在gdb环境中,你可以执行UNIX的shell的命令,使用gdb的shell命令来完成: shell <command string> 调用UNIX的shell来执行<command string>,环境变量SHELL中定义的UNIX的shell将会被用来执行<command string>,如果SHELL没有定义,那就使用UNIX的标准shell:/bin/sh.(http://www.aliyun.com/zixun/aggregation/32995.html&q

详解C语言中的#define宏定义命令用法_C 语言

#define命令#define定义了一个标识符及一个串.在源程序中每次遇到该标识符时,均以定义的串代换它.ANSI标准将标识符定义为宏名,将替换过程称为宏替换.命令的一般形式为: #define identifier string 注意: 1.该语句没有分号.在标识符和串之间可以有任意个空格,串一旦开始,仅由一新行结束. 2.宏名定义后,即可成为其它宏名定义中的一部分. 3.宏替换仅仅是以文本串代替宏标识符,前提是宏标识符必须独立的识别出来,否则不进行替换.例如: #define XYZ th

在GDB中暂停/恢复程序运行

调试程序中,暂停程序运行是必须的,GDB可以方便地暂停程序的运行.你可以设置程序的在哪行停住,在什么条件下停住,在收到什么信号时停往等等.以便于你查看运行时的变量,以及运行时的流程. 当进程被gdb停住时,你可以使用info program 来查看程序的是否在运行,进程号,被暂停的原因. 在gdb中,我们可以有以下几种暂停方式:断点(BreakPoint).观察点(Watch Point).捕捉点(C++atch Point).信号(Signals).线程停止(http://www.aliyun

GDB中应该知道的几个调试方法

七.八年前写过一篇<用GDB调试程序>,于是,从那以后,很多朋友在MSN上以及给我发邮件询问我关于GDB的问题,一直到今天,还有人在问GDB的相关问题.这么多年来,有一些问题是大家反复在问的,一方面,我觉得我以前的文章可能没有说清楚,另一方面,我觉得大家常问的问题正是最有用的,所以,在这里罗列出来.希望大家补充. 一.多线程调试 多线程调试可能是问得最多的.其实,重要就是下面几个命令: info thread 查看当前进程的线程. thread <ID> 切换调试的线程为指定ID的

在GDB中运行与调试程序

当以gdb <program>方式启动gdb后,gdb会在PATH路径和当前目录中搜索<program>的源文件.如要确认gdb是否读到源文件,可使用l或list命令,看看gdb是否能列出源代码. 在gdb中,运行程序使用r或是run命令.程序的运行,你有可能需要设置下面四方面的事. 1.程序运行参数. set args 可指定运行时参数.(如:set args 10 20 30 40 50)show args 命令可以查看设置好的运行参数. 2.运行环境. path <di

photoshop教程:菜单栏中的选择命令

  photoshop软件的选择菜单栏中的命令主要是针对选区进行各种编辑,如创建.修改或存储选区等操作.下面系统之家小编就菜单栏中的选择命令作详细介绍.希望对photoshop的初学者们有所帮助. 一:全部命令 利用"全部"命令,可将当前视图全部选中. 二:取消选择命令 执行"取消选择"命令,将取消视图中的选区,若使用的是矩形选框工具.椭圆选框工具或套索工具,可在图像中单击选定区域外的任何位置,取消选择. 三:重新选择命令 使用"重新选择"命令可

Java中调用外部命令

Java中调用外部命令 public class ExecCommond{ public ExecCommond(){} /** * 执行一条命令 * @param execStr String 命令字符串 * @return String 执行命令错误时的信息. */ public static String exec(String execStr) { Runtime runtime = Runtime.getRuntime(); 取得当前运行期对象 String outInfo="&quo

在ASP中执行Ping命令,并且返回结果

执行 在ASP中执行Ping命令,并且返回结果 在Win2000系统中,可以通过Wscript.Shell对象的Exec方法执行命令, 简单的代码如下: <% Response.Buffer = true %> <% url = "www.topronet.com" Set objWShell = CreateObject("WScript.Shell") Set objCmd = objWShell.Exec("ping "

SQL Server中使用外部命令执行sql脚本

server|脚本|执行 Author:David EulerDate: 2004/09/28Email:de_euler-david@yahoo.com.cn 有任何问题,请与我联系:)    有时候我们需要多次运行一个文件夹下所有的sql脚本(可能时txt或者sql等文本文件)来更新Schema,文件多的时候需要多次执行,那么可以使用多条语句来执行sql脚本.--下面的查询语句在SQL Query中运行,将执行d:\vss下面的指定sql脚本,这些脚本的后缀都是txtexec master.