linux gdb set变量的值 例子(三)

来源:互联网 发布:python except break 编辑:程序博客网 时间:2024/06/04 01:28

以此程序为例,讲解gdb中set的用法

#include <stdio.h>int func(int i){    int j = 1;    int p = 0;    int q = 0;        for(p = 0; p < 5; p++)    {        q++;        printf("p =%d\n", p);        printf("q =%d\n", q);    }    return 0;}int main(){    int i = 5;    i = i +1;    printf("main i = %d\n", i);    func(i);    printf("main2 i = %d\n", i);    return 0;}

使用set 设置变量的值

(1)首先在程序的第15行设置一个断点,然后运行程序,程序运行到第15行会停住。

(2)在断点处用display输出p和q的值

(3)将p的值用set var 命令设置为3

(4)继续运行程序

可以看到用set var 命令将p的设置设为3后,p的值就变成了3,并且以p的值为3继续执行程序。