- 568 名前:デフォルトの名無しさん mailto:sage [2007/12/19(水) 20:17:10 ]
- ポインタのアドレス計算について質問です。
#include <stdio.h> int main(int argc, char *argv[]){ int *ptr; int ary[] = {1, 2, 3, 4, 5, 0}; ptr = ary; while(*ptr != 0){ printf("%d address = %u\n", *ptr, ptr); ++ptr; } return 0; } 上記のプログラムを実行すると、アドレスは4番地ずつ進みます。 使っている参考書ではint型データは2番地ずつ進んでいますが、これは環境によって確保される記憶領域が違うということで宜しいでしょうか? またfloat型の場合、使っている参考書ではint型の2倍、4バイト長ですが当方の環境だとint型と同じ4バイト長でした。 これも環境によって違うのでしょうか?
|

|