私の質問には説明が必要です:
まず、サイズ n (動的または静的) の 1D 配列を考えてみましょう。タブとしましょう。
配列がアドレス 0x01 から (0x01 + n - 1) までのメモリに格納されていると仮定して簡単に説明します。
ここで、p というポインターを考えてみましょう。開始インデックス i (0 から n - 1 の間)。
次に、それを行います:
p = &tab[i];
p はアドレス 0x0i の値を知っています。(表記は正しくありませんが、要点はわかります)。
このように p を使用してtab[i - 1]またはtab[i + 1]を読み取ることができますか?
int iprev = *(p - 1);
int inext = *(p + 1);
それとも単にこのように?
int iprev = p[-1];
int inext = p[1];
そして最終的にこれを行うのですか?
p--;
p++;
それが1D配列で可能であれば、多次元配列でも可能ですか? そして、Cでそれを実装する方法は?