ポインタによる変数の操作

適当な変数*のメモリアドレスをアドレス演算子で参照し、それをポインタに代入することでポインタで変数*を操作できるようになります。

例えば、あるプログラミング言語では、以下のソースコードで変数*aをポインタpで操作できるようになります。

int a = 3;
int *p = &a;

このとき、*pで3を参照できます。

また、以下のように、*p = 5;とすると、変数*aの値は、5に書き換えられます。

int a = 3;
int *p = &a;
*p = 5;

つまり、この場合、a*pは、同じ変数*です。どちらかの値を変更するともう片方もその値に変更されます。

なお、上記のようにポインタで変数*を操作する場合は、変数*のデータ型とポインタのデータ型は同じものにします。これは、ポインタの仕組みから明らかです。