「値 (計算機科学)」の版間の差分

削除された内容 追加された内容
STBot~jawiki (会話 | 投稿記録)
4行目:
 
== 右辺値と左辺値 ==
[[C言語|C]]などのいくつかの言語には'''左辺値'''(l-value)と'''右辺値'''(r-value)という概念がある。左辺値は[[メモリアドレス|アドレス]]に紐付けられたもの、つまり[[変数 (プログラミング)|変数]]かデリファレンスされた[[参照 (情報工学)|参照]]である。[[サブルーチン#関数|関数]]も、[[関数ポインタ]]を取得できるので左辺値である。右辺値は左辺値であっても、非左辺値であってもよい。Cでは、そもそも左辺値とは代入ができるもの(<code>=</code>演算子の左辺)という意味であったが、<code>const</code>が追加されてからは、「変更可能な左辺値」という用語がこれに置き換わった。
 
左辺値はあるオブジェクトを指し示す[[式 (プログラミング)|式]]である。変更不可能な左辺値はアドレスを持つが、代入不可能である。変更可能な左辺値は指し示すオブジェクトを変更することが可能である。右辺値はあらゆる式であり、メモリ中のどこかに格納されたデータを意味する。