int b[3][2] = { {0, 1}, {2, 3}, {4, 5} };
int (*bpp)[2] = b;
int *bp = b[0];
上記のコードで:*bpp
二次元配列へのポインタですか? または、長さ 2 のポインターの配列ですか? なぜ*bpp
括弧で囲まれているのですか?と の間に違いは*bpp[2]
あり(*bpp)[2]
ますか?
その間、次のコードで: (配列の次元の変更)
int i[4] = { 1, 2, 3, 4 };
int (*ap)[2] = (int(*)[2])i;
2行目、特に typecasting は非常に混乱します(int(*)[2])
。正確にキャストするデータ型は何ですか?
ありがとうございます^^