开发者

Linux下gdb调试打印数组元素以及说明

目录
  • 打印数组元素
    • 1. 打印所有数组元素
    • 2. 打印任意连续连续数组元素
  • 总结

    打印数组元素

    下面以下面代码为例,在 gdb 调试中进行打印操作,说明一下。

    代码如下:

    #include <stdio.h>
    int main(void)
    {
      int n = 0;
      int buffer[201] = {0};
      for(n = 0; n &ljst; 201; n++)
      {
        buffer[n] = n;
      }
      return 0;
    }

    1. 打印所有www.devze.com数组元素

    gdb 调试中,有时候需要打印数组元素。但是默认情况下,打印数组元素最多会显示 200 个元素。

    gdb 调试中,android默认情况下,最多会显示 200 个元素。

    如下所示:

    Linux下gdb调试打印数组元素以及说明

    设置打印数组元素数目

    命令为:

    (gdb) set print elements number-of-elements

    设置打印数组元素无限制

    命令为:

    (gdb) set print elements 0

    下面进行 gdb 调试,设置打印数组元素数目限制或无限制。

    操作如下:

    在运行程序之前,输入 " set print elements 5 " 命令设置打印 5 个数组元素。

    之后打印数组元素时是 打印 5 个数组元素。

    如下所示:

    Linux下gdb调试打印数组元素以及说明

    2. 打印任意连续连续数组元素

    gdb 调试中,如果要打印数组中任意连续元素的值,

    打印命令如下MNANlmOm

    p buffer[index]@num

    其中, index 是数组索引(从 0 开始计数),num 是连续多少个元素。

    编程客栈

    打印数组元素的下标,

    设置命令为:

    (gdb) set print array-indexes on

    下面进行 gdb 调试打印,

    操作如下:

    Linux下gdb调试打印数组元素以及说明

    可以看到,输入 " p buffer[3]@5 " 命令后,打印了数组第三个元素连续的 5 个元素。

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

    0

    上一篇:

    下一篇:

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    最新运维

    运维排行榜