アドレス演算子 - 変数が格納された場所
当ページのリンクには広告が含まれています。
スポンサーリンク
ここでは変数が格納されたメモリ上の場所を表示するアドレス演算子を紹介します。
アドレス
変数を次のように定義すると(ここでは例として int型)
int a;
メモリ上に変数の値を格納するための場所が確保されます。
その場所の位置というか……住所のことを「アドレス」といいます。
アドレス演算子
アドレス演算子は、変数が格納された場所を示す場合に利用する演算子のことで、「&」で表します。
例えば、変数「a」の格納場所を示したい場合は「&a」と変数の前にアドレス演算子「&」をつければ、OKです。
それでは実際にサンプルプログラムで、アドレス演算子を使ってみましょう。
サンプルプログラム
「変数の値」と「変数のアドレス」を表示するプログラムです。
#include <stdio.h> int main(void){ int a = 1; printf("変数の値 = %d\n", a); printf("変数のアドレス = %p\n", &a); return 0; }
※ 変数のアドレスを表示する場合は変換指定子「%p」を使います。
printf("変数のアドレス = %p\n", &a);
実行結果
実行結果です。
変数の値 = 1 変数のアドレス = 0x7fff5b408bd8
このように「変数の値」と「変数のアドレス」が表示されます。変数のアドレスは16進数で表示されます。