動的な2D配列を作成する必要があります。以下のコードを試してみました。
と仮定a=512 and b =102
します。これで、作成された2次元配列はですary[512][102]
。今、私はベースロケーションへのポインタを作成しています。int *ptr=&(ary[0][0]);
ここで、ポインタにオフセット102を指定している場合、つまりptr+=102
、&(ary [1] [0])を指している必要がありますが、を指していません。104のオフセットが与えられた場合、それだけがを指し&(ary[1][0])
ます。なぜ余分な2オフセットが必要なのですか????
コードスニペット:
int** ary;
ary= new int*[a];
for(int i = 0; i < a; ++i)
ary[i] = new int[b];