絶対アドレス指定したポインタを2次元配列で使う(C)

普通はまず無いですが、絶対アドレス指定したポインタを1次元配列で使うには以下になります。

int *hoge = (0x77777777);
hoge[0] = 0;
fuga(&hoge[0]);

この場合ポインタは int 分アドレスをインクリメントする事で各配列のアドレスを決める事になります。

ただ2次元配列を使用する場合は、配列の各要素を移動する間にどれだけアドレスをインクリメントするかを指定してやる必要があります。

int (*hoge)[8] = (0x77777777);
hoge[0][0] = 0;
fuga(&hoge[0][0]);

上記の例では、ポインタがインクリメントされる毎に32Byteアドレスが飛ぶ事になります。

テーマ : プログラミング
ジャンル : コンピュータ

2011-09-08 : Work-Linux-C/C++/Java : コメント : 0 : トラックバック : 0
Pagetop
コメントの投稿
非公開コメント

Pagetop
« next  ホーム  prev »

プロフィール

zive

Author:zive
大阪在住、男

ブログ検索

月別アーカイブ

FC2カウンター