zoukankan      html  css  js  c++  java
  • gdb超级基础教程

    GDB超级基础教程

    为什么叫超级基础呢,因为我被坑了一把....

    编译选项带 -g 就可以在可执行程序中加入调试信息,然后就可以使用gdb去查看了。

    使用help命令就可以看到:

    (gdb) help
    List of classes of commands:
    
    aliases -- Aliases of other commands
    breakpoints -- Making program stop at certain points
    data -- Examining data
    files -- Specifying and examining files
    internals -- Maintenance commands
    obscure -- Obscure features
    running -- Running the program
    stack -- Examining the stack
    status -- Status inquiries
    support -- Support facilities
    tracepoints -- Tracing of program execution without stopping the program
    user-defined -- User-defined commands
    
    Type "help" followed by a class name for a list of commands in that class.
    Type "help" followed by command name for full documentation.
    Command name abbreviations are allowed if unambiguous.
    

    这里注意一点了,这些不是命令行参数,是一种种类,有需要的话再进入查看,比如输入 help status!!!

    常用的gdb命令:

    breakpoint
    clear
    q
    info breakpoint
    next
    run
    continue
    print VariableName
    backtrace
    finish #退出函数
    list
    

    需要注意的是,用 list 显示的是编译路径下的代码,并不是可执行文件中包含了源码。加 -g 之后可执行文件中会记录编译路径这些信息,list 时 gdb 去读编译路径下的源码,如果编译路径下的源码删除或者没有源码,那么 list 是显示不了代码的。

    那gdb能不能调试python呢。。。

  • 相关阅读:
    C++ 虚函数表解析
    Zend Studio使用
    Java的位运算符具体解释实例——与(&)、非(~)、或(|)、异或(^)
    史上最简单的Hibernate入门简单介绍
    Ubuntu下很给力的下载工具
    hdu1698 Just a Hook 线段树:成段替换,总区间求和
    STL vector使用方法介绍
    Linux守护进程的编程实现
    PDO--PHP Data Objects
    经常使用的android弹出对话框
  • 原文地址:https://www.cnblogs.com/HelloGreen/p/8870256.html
Copyright © 2011-2022 走看看