C の 2 次元配列について混乱しています。私のコードは次のとおりです。
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 配列のメモリ マップと 2D /多次元配列の MEMORY MAP を参照しないでください...