この記事では、C言語の変数のアドレス(番地)について紹介します。
## アドレスとは
アドレス(番地)とは、「データを格納する場所」のことです。
もっと正確にいうと、データが格納されているメモリ上の番地を指します。
## int型変数のアドレス番地
int型変数はデータ量が2バイトあります。
しかし、メモリは1番地に1バイト(8bit)しかデータを格納できません。
そのため、int型変数は、メモリを「2番地分」占有します。
【例】
2つのint型変数a, bの値を足してint型変数cに格納するプログラムを例にアドレスを考えます。
int a = 5;
int b = 8;
int c;
c = a + b;
このとき、コンピュータ内のメモリでは次のようなことが行われています。
①int型変数aのデータを、メモリ内の100~101番地に格納
②int型変数bのデータを、メモリ内の113~114番地に格納
③aとbを加算した結果cを、メモリ内の134~135番地に格納
コンピュータが変数の値を格納するのに都合の良いアドレスを見つけます。
そのため、変数をいくつか宣言したとき、変数にはバラバラのアドレス(番地)が割り当てられていきます。
【関連記事】
・C言語入門 (サンプルプログラム集)
コメント