2d配列が私によって宣言されました。2d配列のこのポインタ記法は期待どおりに機能しませんか?
static char daytab[2][13] = {
{0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},
{0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},
};
要素[1] [5]のアドレスの場所が必要です。
私は文char *p = &daytab[1][5];
を使用すると動作しますが、ポインタの表記char *p = &(*(*daytab+1)+5);
を使用するとエラーが表示されますか?
ポインタと配列の詳細 –
配列の「ポインタ表記法」はありません。配列がポインタと同じであれば、それはなぜ "ポインタ"と呼ばれるのではなく、 "配列"と呼ばれますか? [ask]を参照し、[mcve]を入力してください。表示された行は、コンパイラの警告を生成します。最初に警告を有効にしてすべてのエラー**と警告**を解決してから、**特定の**の質問があるエラー/警告を除いて尋ねます。 – Olaf
技術的には、「2次元配列」は存在せず、配列の配列のみが存在することに注意してください。この区別は、型、特に要素型について話すときに重要になります。 – Jens