首页 > 其他分享 >【gdb】打印数组的索引下标

【gdb】打印数组的索引下标

时间:2023-10-15 18:44:05浏览次数:42  
标签:下标 打印 索引 gdb num 数组

打印数组的索引下标

1. 例子

#include <stdio.h>

int num[10] = { 
  1 << 0,
  1 << 1,
  1 << 2,
  1 << 3,
  1 << 4,
  1 << 5,
  1 << 6,
  1 << 7,
  1 << 8,
  1 << 9
};

int main (void)
{
  int i;

  for (i = 0; i < 10; i++)
    printf ("num[%d] = %d\n", i, num[i]);

  return 0;
}

在gdb中,当打印一个数组时,缺省是不打印索引下标的:

(gdb) p num
$1 = {1, 2, 4, 8, 16, 32, 64, 128, 256, 512}

如果要打印索引下标,则可以通过如下命令进行设置:

(gdb) set print array-indexes on

(gdb) p num
$2 = {[0] = 1, [1] = 2, [2] = 4, [3] = 8, [4] = 16, [5] = 32, [6] = 64, [7] = 128, [8] = 256, [9] = 512}

 

 

参考资料

1. gdb手册

2. 打印数组的索引下标https://sourceware.org/gdb/current/onlinedocs/gdb.html/Print-Settings.html#index-set-print

标签:下标,打印,索引,gdb,num,数组
From: https://www.cnblogs.com/sunbines/p/17765970.html

相关文章

  • 【gdb】gdb目录索引
    gdb目录索引 打印1打印ASCII和宽字符字符串打印数组中任意连续元素......
  • 【gdb】打印ASCII和宽字符字符串
    打印ASCII和宽字符字符串1.例子:#include<stdio.h>#include<wchar.h>intmain(void){charstr1[]="abcd";wchar_tstr2[]=L"abcd";return0;}用gdb调试程序时,可以使用“x/s”命令打印ASCII字符串。以上面程序为例:[root@node0......
  • 无涯教程-NumPy - 高级索引
    有两种类型的高级索引-Integer索引和Boolean索引。整数索引根据数组的N维索引选择数组中的任意项,每个整数数组代表该维度的索引数,当索引与目标ndarray的维数一样时,它变得很简单。示例1importnumpyasnpx=np.array([[1,2],[3,4],[5,6]])y=x[[0,1,2],[0,1......
  • 【gdb】设置观察点
    设置观察点1.例子:#include<stdio.h>#include<pthread.h>typedefstruct{inta;intb;intc;intd;pthread_mutex_tmutex;}ex_st;intmain(void){ex_stst={1,2,3,4,PTHREAD_MUTEX_INITIALIZER};printf("%d,%d,%d,%d\n&......
  • 【gdb】run和start区别
    run和start区别gdb调试器提供了多种方式来启动目标程序,其中最常用的就是run指令,其次为start指令。也就是说,run和start指令都可以用来在gdb调试器中启动程序,它们之间的区别是:1、默认情况下,run指令会一直执行程序,直到执行结束。如果程序中手动设置有断点,则run指令会执行......
  • 【gdb】断点管理
    断点管理命令说明:命令说明breakb断点命令break函数名为函数设置断点break代码函数为某一行设置断点break类名:函数名在某个类的函数设置断点break文件名:函数名在文件名指定某个函数设置断点break文件名:行数在文件名执行的代码行设置断点br......
  • 【gdb】向上或向下切换函数堆栈帧
    向上或向下切换函数堆栈帧1.例子:#include<stdio.h>intfunc1(inta){return2*a;}intfunc2(inta){intc=0;c=2*func1(a);returnc;}intfunc3(inta){intc=0;c=2*func2(a);retur......
  • ubuntu18.04环境下编译支持debuginfod的gdb
    ubuntu18.04环境下编译支持debuginfod的gdb介绍Ubuntu22.10版本才默认安装debuginfod,对于之前的发行版都需要手动配置。gdb从10.1版本才开始支持debuginfod,而Ubuntu旧的发行版里gdb都低于10.1版本。另外,debuginfod被包含在elfutils里面,且从elfutils-0.178版本后才支持,而Ubuntu......
  • 索引是不是建的越多越好?MySQL索引用的什么数据结构?一棵B+树能存储多少条数据?
    一、索引是不是建的越多越好当然不是。索引会占据磁盘空间索引虽然会提高查询效率,但是会降低更新表的效率。比如每次对表进行增删改操作,MySQL不仅要保存数据,还有保存或者更新对应的索引文件。二、MySQL索引用的什么数据结构MySQL的默认存储引擎是InnoDB,它采用的是B+树结构的索引......
  • elasticsearch通过Java class类的@Setting和@Mapping来定义索引index
    今天就来和大家讲讲如何将es索引中的mapping和setting在索引index和class联系起来,其实在这个问题也困扰我好久了,一直没有解决,在elasticsearch7.x版本的时候貌似好像可以用request在程序中来建立索引,像Stringindex=“{“mapping”:...}”之类的操作,干起来比较复杂,在elasticsear......