この記事では、C言語のポインタ型変数の宣言と、変数のアドレス求め方について紹介します。
## ポインタ型変数
ポインタは、変数を格納しているアドレスを示す表現です。
データが1つずつ変数に入っている時、「各変数のアドレスを配列にしておけば、バラバラの変数をまとめて管理する」ことができます。
このように「アドレスをデータとして扱う変数」をポインタ型変数といいます。
配列ptr | 100番地 | 110番地 | 115番地 |
## ポインタ演算子 *
C言語では、ポインタ型変数は「*px」のように先頭にアスタリスク * を付加して宣言します。
この * を「ポインタ演算子」といいます。
【例】ポインタ型変数の宣言
int *px; // pxはint型変数を指すポインタ
char *py; // paはchar型変数を指すポインタ
## アドレス演算子 &
変数のアドレスを求める場合は、アドレス演算子 & を使います。
【例】変数のアドレスを求める
int x = 5; // int型変数の宣言
int *px; // int型変数を指すポインタの宣言px = &x; // 変数xのアドレスをポインタpxに格納
xの値 = 10
&xの値 = 102 → これをポインタpxに代入(102は変数xのアドレス)
pxの値 = 102
&pxの値 = 202
ポインタ型変数も普通の変数と同じで、アドレスが割り当てられます。
(上の場合は202番地)
【関連記事】
・C言語入門 (サンプルプログラム集)
コメント