コードが壊れるかどうかを確認するために、次のコードをcで記述しました。
int main(void)
{
int A [5] [2] [3];
printf("%d\n\n", A[6]);
printf("%d\n\n", &A[6][0][0]);
system("pause");
}
今、私が予期していなかったコードが壊れることはありません。多次元配列を宣言するとき:int A [5][2][3]
、それは概念的に、最初のレベルのAが5要素(0〜4)の1次元配列であり、その配列のすべての要素自体が2要素の1次元配列であることを意味しません。その配列のすべての要素は3つの要素の1次元配列ですか?その概念が正しければ、どのよう
A[6][0][0]
に存在することもできます-最初のレベルでは5つの要素(0ベース)しかないためです。
助けていただければ幸いです。