zoukankan      html  css  js  c++  java
  • Ubuntu

    gcc -g -o test test.c

    gdb 或 gdb ./test

    (gdb) file ./test

    (gdb) r

    Hello, World!

    ----------

    调试代码:

    run(r):运行代码

    next(n):单步跟踪,函数调用当作一条简单语句执行

    step(s):单步跟踪,函数进入被调用函数体内

    finish : 退出进入的函数

    until(u):退出一个循环体

    continue(c):继续运行程序

    查看运行时数据

    print(p):打印变量、字符串、表达式等直

    ----------

    设置断电

    break(b)行号:设断点

    b 函数名

    i b :查看断电信息

    whatis  内容:打印内容

    d  编号:删除编号处(不是行号)的断点

    b 行号 if i==9:设置条件断点

    bt:打印栈帧信息

    找不到源代码,可使用list

    若使用list命令无效,记住gdb的调试信息中并不包含源代码,

    这个需要通过directory命令实现,由于某中原因,源代码移动

    位置,则需要告诉gdb,gdb就会根据指定的路进查找,查看gdb

    的查找路径:

    show directories

    dir dirname1:dirname2:dirname3

    有时使用-g没有调试信息,可改成

    -gstabs试一试,若还是不太理想,可使用

    -gstabs+

    list(l)行号:显示行号

    l :从main函数开始

    l 函数名

  • 相关阅读:
    java内存溢出
    jstack命令使用
    JVM问题排查步骤
    c++指针常量和常量指针
    c++ 通讯录
    冒泡排序
    翻转数组
    敲桌子
    求一个100-999之间的水仙花数
    elasticsearch 模板的使用
  • 原文地址:https://www.cnblogs.com/gwzz/p/13376878.html
Copyright © 2011-2022 走看看