ポインタ:
int a;
int *a;
(int*) a;
int aの場合には単にsizeof(int)の領域を持っているだけ。
(int *) aの時、aはポインタ型であり、メモリの先頭を指す。
a++でメモリ位置をずらすこともできる。
この場合、ポインタの指すアドレス番地はa+1ではなく、a+intのバイト数(=4)分ずれる。
aと表現した場合にはint *a;という意味合いなので、int型と考えてよい。
つまりは、ポインタの中身。
int型で宣言した変数のアドレスを知りたいときに&aのように表現する。
int a[100]; ←可変のときに使えない
int *a; ←可変でも使える。後でmallocで領域を確保すればよい。
最終更新:2011年04月02日 16:43