zoukankan      html  css  js  c++  java
  • gdb调试命令

    编译

    要用gdb调试, 需要在gcc编译时加-g选项
    gcc -g main.c -o main

    基本命令

    gdb [a.out] 开始调试a.out程序
    start 停在main函数第一行语句等待下一个命令
    run 执行到下一个断点, 或阻塞语句, 或到程序结束
    list/l 列出源代码
    next/n 下一行,不进入函数内部,直接执行完毕到下一行
    step/s 下一步,如果有函数, 则进入函数内部
    until/u [lineno] 执行到第几行, 经常用于跳过for/while循环
    quit 退出调试

    变量

    info/i local 查看当前函数的所有局部变量
    print/p [arg] 打印变量arg的值, arg为实际中的变量, 不用加中括号
    set var 修改变量的值
    run arg1 arg2 ... 此句用在gdb main与start中间, 效果同main arg1 arg2 ...,也就是传入命令行参数
    x/[num]b ptr 以字节为单位16进制显示内存的内容, 从ptr所在单元开始, 一共显示num项

    断点

    break/b line 在第line行设置一个断点
    break funcname 在funcname函数开头设置断点
    disable breakpoints 禁用断点,使所有断点失效
    enable breakpoints 启用断点,使所有断点有效
    info/i breakpoints 查看设置了哪些断点

  • 相关阅读:
    解决依赖的moduleBuildConfig.DEBUG总是未false的问题
    android异步处理机制
    Android 5.0 行为变更
    Android 6.0 变更
    Android 7.0 行为变更
    android 8.0变更
    Android 4.4 API
    Android常见问题集锦
    Android笔记汇总目录
    Delphi中Indy 10的安装和老版本的卸载
  • 原文地址:https://www.cnblogs.com/cfans1993/p/5883363.html
Copyright © 2011-2022 走看看