0

私の質問には説明が必要です:

まず、サイズ 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でそれを実装する方法は?

4

1 に答える 1