ポインタの基本的概念

1.3 基本概念のまとめ
1.ポインタ変数
  変数の格納場所(アドレス)を記憶する変数

2.& :アドレス演算子
  変数の前に & をつけると、その「変数のアドレス」が取り出せる

3.* :間接演算子
  ポインタ変数の前に * をつけると、その「アドレスの内容」を取り出せる

 次に、基本概念の復習を兼ねて、次のような代入文が実行された時の *ptr, q の値、ptr の値はどうなるか考えてみましょう。ただし、変数 q のアドレスを 300、ポインタ変数 ptr のアドレスを 400 とします。
int q, *ptr;

ptr = &q;
*ptr = 100;
 上記の命令を実行した時のメモリ領域の状況は下図のようになります。よって、*ptr, q の値は100、ptr の値は 300 となることがわかります。
メモリ領域のイメージ