zoukankan      html  css  js  c++  java
  • gdb调试参数

    参考 这里

    1)gdb 打印字符串的全部内容

    set print element 0

    2)用x命令查看内存(examine的缩写)

    (gdb) x/1ub 0x7ffff7fbf7a0
    0x7ffff7fbf7a0: 196

    从地址0x7ffff7fbf7a0开始, 读取 1 个单字节,以16进制形式读取

    1可换成任意整数

    u可以替换成:

    d 按十进制格式显示变量
    x 按十六进制格式显示变量
    a 按十六进制格式显示变量
    u 按十六进制格式显示无符号整型
    o 按八进制格式显示变量
    t 按二进制格式显示变量
    c 按字符格式显示变量
    f 按浮点数格式显示变量

    h可以替换成:

    b表示单字节,h表示双字节,w表示四字 节,g表示八字节

    3)查看数据

    int *array = (int *) malloc (len * sizeof (int));

    *array@len

        @的左边是数组的首地址的值,也就是变量array所指向的内容,右边则是数据的长度,其保存在变量len中,其输出结果,大约是下面这个样子的:
        
            (gdb) p 
    *array@len
            $1 = {2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40}

        如果是静态数组的话,可以直接用print数组名,就可以显示数组中所有数据的内容了。

  • 相关阅读:
    MapReduce原理
    用redis构建分布式锁
    Python中类的特殊变量
    Python之元类
    python之WSGI与Guincorn
    一种消息和任务队列——beanstalkd
    LRU 算法
    extern、static、restrict、volatile 关键字
    bigtable原理
    Go的微服务库kite
  • 原文地址:https://www.cnblogs.com/taek/p/7489438.html
Copyright © 2011-2022 走看看