c語言變數運算
⑴ 在c語言中11種賦值運算符的具體含義,用法
1.=
賦值運算符
變數=表達式
如:a=3;將a的值賦為3
2./=
除後賦值
變數/=表達式
如:a/=3;即a=a/3
3.*=
乘後賦值
變數*=表達式
如:a*=3;即a=a*3
4.%=
取模後賦值
變數%=表達式
如:a%=3;即a=a%3
5.+=
加後賦值
變數+=表達式
如:a+=3;即a=a+3
6.-=
減後賦值
變數-=表達式
如:a-=3;即a=a-3
7.<<=
左移後賦值
變數<<=表達式
左移就是將《左邊的數的二進制各位全部左移若干位,《右邊的數指定移動位數,高位丟棄,低位補0,
移幾位就相當於乘以2的幾次方
8.>>=
右移後賦值
變數>>=表達式
右移運算符是用來將一個數的各二進制位右移若干位,移動的位數由右操作數指定(右操作數必須是非負值),移到右端的低位被舍棄,對於無符號數,高位補0。對於有符號數,某些機器將對左邊空出的部分用符號位填補(即「算術移位」),而另一些機器則對左邊空出的部分用0填補(即「邏輯移位」)。注意:對無符號數,右移時左邊高位移入0;對於有符號的值,如果原來符號位為0(該數為正),則左邊也是移入0。如果符號位原來為1(即負數),則左邊移入0還是1,要取決於所用的計算機系統。有的系統移入0,有的
系統移入1。移入0的稱為「邏輯移位」,即簡單移位;移入1的稱為「算術移位」。
9.&=
按位與後賦值
變數&=表達式
按位與是指:參加運算的兩個數據,按二進制位進行「與」運算。如果兩個相應的二進制位都為1,則該位的結果值為1;否則為0。這里的1可以理解為邏輯中的true,0可以理解為邏輯中的false。按位與其實與邏輯上「與」的運算規則一致。邏輯上的「與」,要求運算數全真,結果才為真。若,A=true,B=true,則A∩B=true
10.
^=
按位異或後賦值
變數^=表達式
參與運算的兩個量按照對應的位進行異或運算,且
0^0→0,
0^1→1,
1^0→1,
1^1→0
此外,一個數與0異或仍保持不變,即a^0=a
一個數與自己異或結果為0,即a^a=0
11.|=
按位或後賦值
變數|=表達式
參與運算的兩個量按照對應位進行或運算,且
0|0→0,
0|1→1,
1|0→1,
1|1→1
這些位運算都是與二進制碼有關的,所以多弄弄也就會了
⑵ c語言中的+=是什麼意思怎麼使用的
自增1的意思,比如int i=1; i++後i的值就變為了2.
兩種用法:
假如定義了一個變數i=1
1、若使用i++, 指代先取i的值再另i=i+1
2、若使用++i,指代先使i=i+1再取i的值
注意的就是i++和++i的區別,前者是運算完後自增1,後者是自增1後再運算。
(2)c語言變數運算擴展閱讀:
C語言運算符
一、常見的加減乘除運算
1、加法:+還可以表示正號
2、減法:-還可以表示負號
3、乘法:*非數學意義上的X
4、除法:/注意1/2的值為0而非0.5
5、取余(模運算):兩個整數相除之後的余數(注意兩邊都必須是整數,帶符號只和左值有關)
二、自增自減運算
Inta=10;
把a的值加1有四種方法:
1、a=a+1;
2、a+=1;
3、a++;
4、++a;
簡單區分a++和++a。
Intb;
Inta=10;
b=++a; //a==11,b==11;a先把值加1為11,再賦值給b
b=a++; //a==11,b==10;a先把值10復制給b,a自己再加1為11
b=(a++)+(++a);//a1==10,a2==12,b==22
b=(++a)+(a++);//a1==11,a2==11,b==22
注意:intd=10++;//這種寫法是錯誤的,因為對常量進行自加和自減沒有任何意義。
⑶ C語言中+=和-=是什麼意思
+=:加法賦值運算符,將運算符前面的變數加上後面的值再賦值給前面的變數。
-=:減法賦值運算符,將運算符前面的變數減去後面的值再賦值給前面的變數。
比如:
a+=b;//等價於a=a+b
a-=b;//等價於a=a-b