我对 C 中的二维数组感到困惑。我的代码是:
main()
{
int i, j;
int arr[3][4] = {
{ 1, 2, 3, 4 },
{ 5, 6, 7, 8 },
{ 9, 0, 1, 6 }
};
printf("\narr: %u", arr);
printf("\n&arr: %u", &arr);
printf("\n*arr: %u", *arr);
}
上述程序的输出为:
arr u: 3215469448
&arr: 3215469448
*arr: 3215469448
现在告诉我所有 3 个 printf 语句如何显示单个位置的地址。只需大致解释这些地址是如何相同的。
我知道,之前也有人问过类似的问题,但他们没有帮助我。不要让我参考C 中 2D 数组的 Memory map和2d/多维数组的 MEMORY MAP ...