int hoge;
hoge = 10;
piyo = hoge * 10;
作為變數,他有」自身的值「使用和作為「自身的記憶體區域」使用兩種情況。
此外在c中,即使不是變數名,表示式也是可以代表「某個變數的記憶體區域」。比如這種情況:
hoge_p = &hoge;
*hoge_p = 10;
像這樣,表示式表示某處記憶體區域的時候,我們稱當前的表示式為左值(lvalue);相對的,表示式只是代表值的時候,我們稱當前的表示式為右值。
在標準委員會的定義,lvalue的l不是left的意思,而表示locator(指示位置的事物)。rationle中有下面一段描述,
the committee has adopted the dafinition of lvalue as an object lovator。
儘管如此,jis x3010還是將lvalue解釋成了「左值」。
中國國家標準gb/t 15272-94(189頁)中,也是將lvalue解釋成左值。
什麼是左值和右值
第一次讓左值右值引起我注意的時候是在剛接觸字串和指標的時候編譯器對 的一段錯誤提示 那什麼是左值 l value 那 說的通俗一點就是可以放在賦值號左邊的叫左值 就是可以被賦值的。是乙個位址 左值一般是是乙個變數可以被賦值的變數。const變數是乙個例外只能做右值 那什麼是右值 r value 那 ...
雜湊值是什麼
雜湊值是什麼 雜湊值就是檔案的身份證,不過比身份證還嚴格。他是根據檔案大小,時間,型別,創作著,機器等計算出來的,很容易就會發生變化,誰也不能預料下乙個號碼是多少,也沒有更改他的軟體。雜湊演算法將任意長度的二進位制值對映為固定長度的較小二進位制值,這個小的二進位制值稱為雜湊值。雜湊值是一段資料唯一且...
C 中左值和右值是什麼以及存在的理解誤區
左值 lvalue 和右值 rvalue 的通俗理解是在如下的等式中,右值 right value 放在等號右邊,左值 left value 放在等號左邊,這就是左值右值的初步定義。int a 1 1但這種方式並不能解釋左值和右值的根本含義,並且並不是每乙個等式的左邊一定是左值,右邊一定是右值。其根...