宣言の所で述べたように、計算をコンピュータにやらせても、コンピュータはその 結果を即座に忘れてしまう。そこで、計算結果を保存しておく必要がある。また、 整数の宣言をしても、それは箱を用意しただけで、そこには何も入ってない。 ( 正確には何が入っていても良い。つまり、コンピュータの勝手。 ) 従って、値を変数の箱に入れる操作が必要であるが、これを代入といい、以下の ように行なう。
a = 3; |
この操作によって、a
という名前の変数の箱の中に 3 という値が入る。
( 勿論、変数 a
は、この前に宣言で確保されていなければならない。)
ここで、代入には =
という記号が使われているが、数学で使う等号と
間違えてはいけない。
また、計算結果を代入することも出来る。
a = 3 * 2; |
この結果、a
には、6 が代入される。
その順序であるが、まず、3*2
が実行され、その結果 6 が得られる。
その 6 が代入演算子 =
によって、変数 a
に代入される。
前の節で出てきた割算の場合、
#include <stdio.h> main() { int a; a = 7 / 2; ... } |
a
に
代入されるのは a
に
注意 先に注意したように =
は、代入文であって数学の等号とは
違う。必ず、左辺に書いてある変数に右辺の数値が代入されるという意味である。
従って、次のような文は文法的に間違っている。
間違った例 3 = a; |
ここで 3 は、数値であって、数値を入れる事の出来る箱ではないので、間違いである。
すなわち、C 言語の式では、代入記号 の右側にあるもの(右辺)と左側に
あるもの(左辺)には区別があるのである。