初級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講座」もどうぞ。