Я пытаюсь это выяснить, поскольку я пытаюсь сделать то же самое (надеюсь) с помощью сценария собственного производства:
Пример кода C:
typedef struct _B
{
A aa;
double b;
char c[LEN];
int d;
char *a_ptr[10];
} B;
B this_b;
ЕслиЯ компилирую это с gcc -g
и gdb a.out
впоследствии, gdb
точно знает, что и где a_ptr
:
(gdb) p &(this_b.a_ptr)
$1 = (char *(*)[10]) 0x804a084
как это происходит?И могу ли я сделать то же самое (зная его адрес и тип) через другие утилиты?