Предположим, что определено: int a[100] Тип print a, тогда gdb автоматически отобразит его как массив: 1, 2, 3, 4.... Однако, если a передается функции как параметр, тогда gdb будет рассматривать его как обычный указатель int, тип print a будет отображать: (int *)0x7fffffffdaa0. Что делать, если я хочу просмотреть a как массив?
Gdb - Как просмотреть указатель, как массив?
Ответ 1
Смотрите здесь. Короче вы должны сделать:
p *[email protected]
Ответ 2
*(T (*)[N])p где T - тип, N - число элементов, а p - указатель.
Ответ 3
Используйте команду x.
(gdb) x/100w a