我很高兴在GDB中调试,然后我点击了一个可能包含不正确值的2D数组。 但是我似乎无法打印单个元素。
p array2D[0][0]
给了我
无法对不完整类型执行指针数学运算,尝试转换为已知类型或无效*。
我试图谷歌这个,但我找不到任何东西,我不确定我是否遗漏了一些明显的东西。
答案 0 :(得分:0)
p arr[0][0]
适用于我的测试代码:
#include<stdio.h>
int main()
{
int a[3][3];
a[0][0]=1;
a[0][1]=2;
return 0;
}
on gdb:
(gdb) b test.c:6
Breakpoint 1 at 0x400473: file test.c, line 6.
(gdb) r
Starting program: a.out
Breakpoint 1, main () at test.c:6
6 a[0][1]=2;
(gdb) p a[0][0]
$1 = 1
(gdb) ptype a
type = int [3][3]
所以问题不是p arr[0][0]
,而是其他问题。