我有一个2D数组
对于前
int arr[3][3] = {{1,2,3},{4,5,6},{7,8,9}};
Run Code Online (Sandbox Code Playgroud)
那会是什么类型的?
&arr[1]
Run Code Online (Sandbox Code Playgroud)
我以为它会是**
(双指针)但是当我写一个函数如
int **get_arr()
{
return &arr[1];
}
Run Code Online (Sandbox Code Playgroud)
我收到警告
return from incompatible pointer type
Run Code Online (Sandbox Code Playgroud)
那会是什么类型的?
Run Code Online (Sandbox Code Playgroud)&arr[1]
类型为&arr[1]
is int (*)[3]
,即它是指向3个整数数组的指针类型.
我以为会是
**
(双指针)
你错了.&arr[1]
不是双指针.正如我已经提到的,它是类型的int (*)[3]
.