初級C言語講座

第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


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

  整数 住所
int data; と宣言 data &data
int *data; と宣言 *data data
前のページ   次のページ

当ページ・当社へのご意見やご感想があればお手数ですが「お問い合わせ」までお願いいたします。
当社への就職をお考えの方は「採用情報ページ」までお願いいたします。
Javaを学びたい方は「Java講座」もどうぞ。