[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[jfriends] Re: ポインターと参照
前橋です。
天野さん:
>step1 int 型 ポインタにはアドレスが入っている
>step2 ポインタをインクリメントする
>step3 ポインタが int 分だけ進む
>step4 でも、 int 型 ポインタにはアドレスしか入っていない
>
>なら、何故 int 分だけ進めるのか、int 分であるという情報を何処から仕入れ
>ているのか?
int型へポインタですから、int分だけ進めます。その情報は、コン
パイル時に決定できます。
ポインタ演算というのは、C言語の開発時に、配列アクセスの最適
化を *手抜きするため* に作られた機能である、と私は認識してい
ます。
>このアドレスからこのアドレスに入っているポインタは、全部 int とか決められ
>ているのだろうか?
例えば、
char buf[1000];
char *char_p;
int *int_p;
char_p = buf;
int_p = (int*)char_p;
int_p++;
とすると、最後のint_p++では、ポインタはsizeof(int)分だけ進み
ます。
------------------------------------------------------------
前橋 和弥 maebashi@xxxxxxxxxx
中部ソフトエンジニアリング(株)
〒450 名古屋市中村区名駅4-10-25(名駅IMAIビル 5F)
Tel:(052)583-4511(代) 内線 252 Fax:(052)583-4566
------------------------------------------------------------