GDB入门教程之恢复程序执行

本文是GDB教程的一部分,介绍了如何控制程序执行流程。内容包括next、step、skip、finish、return、continue和until命令的使用,帮助开发者在调试过程中更灵活地跟进程序执行。
摘要由CSDN通过智能技术生成

拖了好久了,今天继续之前的 GDB 教程系列。

在学会了使用 GDB 启动调试、设置调试断点、查看变量值等基础知识后,工作中经常需要使用的 GDB 核心功能便是:调试程序 (即:灵活地控制和跟进程序的执行流程)。

在 GDB 下使用 wi 命令可启动可视化调试。为了便于演示,本文使用 GDB 的可视化调试模式行对下面的简单 demo 进行调试举例。

#include<stdio.h>
#include<stdlib.h>

void swapper(int *a, int *b)
{
    int c = *a;
    *a = *b;
    *b = c;
    printf("swapped!\n");
}

int main(int argc, char *argv[])
{
    int i = 4, j = 6;
    printf("i: %d, j: %d\n", i, j);
    swapper(&i, &j);
    printf("i: %d, j: %d\n", i, j);
    int n = 65535;

    while (n--)
    {
        printf("n: %d\n", n);
    }
    
    printf("finish\n");
    return 0;
}

假设上述 demo 程序被 GDB 启动并暂停在第 14 行。

(1) next 命令

可以使用 next 命令 (缩写形式 n) 继续执行下一行语句</

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值