第6章 C言語のポインタ ~ & と * を使ってみる ~

 それでは、正しいポインタ型変数の宣言の仕方を説明します。

     型名 *変数名;
  例: int  *ptr;

 ポインタは、英語で「ある場所を指し示す人や物」という意味です。 つまり、ポインタ型の変数を宣言するということは、「0012FF7C」だとか、 「0064FDF4」という住所を指し示す値を入れる箱を用意することを意味するのです。

 最後にもう一つだけプログラムを作ってください。 &をつけると、変数から変数の住所が求まります。

 では、反対に変数の住所から変数の値が求まってもいい気がしませんか? 変数の住所から、変数の値を求める方法は次のようになります。

— リスト16``–

#include <stdio.h>

void main( ) {
  int  data;
  int *ptr;

  data = 5;

  printf("整数型の変数dataの値= %d\n", data);
  printf("整数型の変数dataのアドレス= %08X\n", &data);

  ptr = &data;

  printf("ポインタ型の変数ptr = %08X\n", ptr);
  printf("ptrが指す場所に保存されている値= %d\n", *ptr);
}

 次のような結果になったと思います。

  整数型の変数dataの値= 5
  整数型の変数dataのアドレス= 0012FF7C
  ポインタ型の変数ptr = 0012FF7C
  ptrが指す場所に保存されている値= 5

 何となくでもいいですから、わかりましたか?
 表にまとめると、次のような関係になります。

< 前のページへ

Pagetop