回覆列表
  • 1 # 使用者4764445379043

    左值就是在賦值中可以放在賦值運算子兩邊的值,比如: int a = 1; double b = 2.0 a = b; b = a; 這裡a和b都是左值, 你那個c+k = 32不能寫成 32=c+k 因為32是常量,所以這個不是左值

  • 2 # 跳舞的山羊

    1.六個變數=表示式的賦值:=是賦值運算子,/=是除後賦值,*=是乘後賦值,%=是取模後賦值,+=是加後賦值,-= 是減後賦值,2.<<=是左移後賦值,變數<<=表示式 左移就是將左邊的數的二進位制各位全部左移若干位,右邊的數指定移動位數,高位丟棄,低位補0, 移幾位就相當於乘以2的幾次方。3.>>=是右移後,變數>>=表示式,右移運算子是用來將一個數的各二進位制位右移若干位,移動的位數由右運算元指定(右運算元必須是非負值),移到右端的低位被捨棄,對於無符號數,高位補0。對於有符號數,某些機器將對左邊空出的部分用符號位填補(即“算術移位”),而另一些機器則對左邊空出的部分用0填補(即“邏輯移位”);對無符號數,右移時左邊高位移入0;對於有符號的值,如果原來符號位為0(該數為正),則左邊也是移入0。如果符號位原來為1(即負數),則左邊移入0還是1,要取決於所用的計算機系統,系統移入0或系統移入1。移入0的稱為“邏輯移位”,即簡單移位;移入1的稱為“算術移位”。4.&= 按位與後,變數&=表示式,按位與是指:參加運算的兩個資料,按二進位制位進行“與”運算。如果兩個相應的二進位制位都為1,則該位的結果值為1;否則為0。5.^= 按位異或後賦值,變數^=表示式,參與運算的兩個量按照對應的位進行異或運算,且0^0→0, 0^1→1, 1^0→1, 1^1→0一個數與0異或仍保持不變,如a^0=a一個數與自己異或結果為0,如a^a=011.|=是按位或後賦值,變數|=表示式,參與運算的兩個量按照對應位進行或運算,且0|0→0, 0|1→1, 1|0→1, 1|1→1。

    擴充套件資料:

    1.賦值表示式的功能是計算表示式的值再賦予左邊的變數。賦值運算子具有右結合性,因此a=b=c=5可理解為a=(b=(c=5))。2.在其它高階語言中賦值構成了一個語句,稱為賦值語句;而在C語言中,把“=”定義為運算子,從而組成賦值表示式。3.凡是表示式可以出現的地方均可出現賦值表示式。例如:式子x=(a=5)+(b=8)是合法的。它的意義是把5賦予a,8賦予b,再把a,b相加,和賦予x,故x應等於13。4.在C語言中也可以組成賦值語句。按照C語言規定,任何表示式在其未尾加上分號就構成為語句。

  • 中秋節和大豐收的關聯?
  • 彈吉他應該主要用音階思維還是琶音思維?