ポインタ変数の定義
ポインタは、アドレスを格納する変数であり、別の位置(関数内など)にある変数の値を、間接的に参照 したり、間接的に数値を代入したりする時に用います。(ポインタに数値を直接代入することは出来ない) 実際にポインタ変数を定義して、アドレス演算子「&」を用いて、数値を参照する方法は、下記の通りです。
記述例
#include <stdio.h> int main(void) { int a = 0; int *pa; /* ポインタ変数の定義 */ printf("a = %d\n", a); pa = &a; /* ポインタ変数に「a」のアドレスを格納 */ *pa = 10; /* 間接的に、「a」の値へ「10」を代入 */ printf("a = %d\n", a); /* 間接代入後の「a」の値を見る */ return 0; } |
上の場合、変数「a」に「0」を代入して、ポインタ変数により、間接的に「a」の値を「10」に変えています。
間接演算子
上記の記述例で用いる記号 「*」をアスタリスクといい、C言語では、間接演算子といいます。ポインタ変数を定義する時に 用いたり、他の変数に対して、間接的に、値を参照したり、代入したりする時に用います。