1樓:匿名使用者
i &= j; ----------------> i = i && j;
i |= j; ----------------> i = i ||copy j;
i >>= 1; ---------------> i = i >> 1;
以此類推;bai
&& 與運算
|| 或運算
^ 異或運算
>> 向右du移位
<< 向左移位
你自己寫zhi個簡單dao
的驗證一下看看對不對
c語言中規定 賦值運算子的左邊必須是什麼?
2樓:**ile灬微光丶
賦值運算子的左邊必bai須是變數。
簡單du賦值運zhi算符記為「=」,由「= 」連線的式dao子稱為賦值表專達式。其一
屬般形式為:
變數=表示式
例如:x=a+bw=sin(a)+sin(b)y=i+++--j
賦值表示式的功能是計算表示式的值再賦予左邊的變數。賦值運算子具有右結合性,因此a=b=c=5可理解為a=(b=(c=5))。
在其它高階語言中,賦值構成了一個語句,稱為賦值語句。 而在c中,把「=」定義為運算子,從而組成賦值表示式。 凡是表示式可以出現的地方均可出現賦值表示式。
例如:式子x=(a=5)+(b=8)是合法的。它的意義是把5賦予a,8賦予b,再把a,b相加,和賦予x,故x應等於13。
擴充套件資料
賦值運算子的作用是把右側表示式的值存入左側變數中,c語言中賦值操作是作為一種表示式來處理的。
賦值運算子(=)可以和算術運算子(+,-,*,/,%)及雙目運算子(&,|,^,>>,<<)組合成一個複合賦值運算子。但需要注意的是複合賦值運算子的兩個組成符號之間不能有空白字元。
3樓:fanfeng雙魚
須變數,不能是常量bai
。例如:int i=1;
dui就是一個變數。zhi
賦值操作符(=)用於對變數賦dao值,左邊必須是變數,右邊是可以當成數字使用的內容,賦值操作符的優先順序很低,但是比,優先順序高。
多個賦值操作符從右向左計算。
複合賦值操作符(+=,-=,*=,/=),其優先順序和賦值操作符的優先順序一樣。
swap.c
#include
int main()
4樓:匿名使用者
必須是變數名(如a=2),也可以是 *指標變數名(這相當於給指定的記憶體地址賦值,如*p=2)
c99或者c++還允許引用名寫在賦值號左邊
5樓:千鋒教育
左邊必須是變數,而且是跟所要賦的值型別相同。
6樓:匿名使用者
左邊必須是一個變數,型別可以不同。
兩邊的型別不同也可以賦值,強制轉型比如:
char s[20];
int x=(int)s
7樓:自由的風的我
賦值運算子左邊必須是一個變數,不可以是一個常量,也不可以是一個表示式,如a+b=c是非法的。
8樓:s如詩如夢
必須是變數
因為要賦值給左邊,所以左邊必須是一個可以儲存東西的單元
這是規定的,必須是變數
9樓:誰也整不了你
只有可修改的變數或者 」運算結果是可修改的變數的表示式「才可以作為左值。
10樓:陳士晟
左邊不能是一個確定的數,比如「a=3「不能寫成「3=a「
11樓:剛慢打老虎
賦值運算子左側只能是變數,而不能是
常量或者表示式。右側可以是表示式包括賦回值表示式答。規定最左邊變數所得到的新值,就是整個賦值表示式的值,
如果賦值運算子的兩側型別不一致,在賦值前系統將自動先把右邊的表示式所求得的數值按賦值號左側變數的型別進行轉換,
就這麼多了,**不完全待修改還請指正。
12樓:匿名使用者
答:變數。
因為只有變數才有空間來存放運算的結果。表示式是不行的。
13樓:匿名使用者
賦值運算子的左側必須是變數
14樓:匿名使用者
以上答抄案都不對,請
bai參考權威:
actually, the left side must refer to a storage location. the ******st way is to use the name of a variable, but, as you will see later, a 「dupointer」 can be used to point
to a location.
以上內容來自zhi
《c primer plus (第六版)》dao
15樓:程式設計大亨
變數.能夠改變的值,不是在常量區的值.
16樓:匿名使用者
變數int a=2;
17樓:匿名使用者
運算子左邊必須是變數
18樓:hjc_臥龍待天
可以被賦值的變數名稱
賦值運算子的意思
19樓:學雅思
賦值運算子的意思是將運算子右側的物件或者數值傳遞給左側的物件或者變數。
基本的賦值運算子是「=」。一開始可能會以為它是「等於」,其實不是的。它實際上意味著把右邊表示式的值賦給左邊的運算數。
賦值運算表示式的值也就是所賦的值。也就是說,「$a = 3」的值是 3。
擴充套件資料賦值運算將原變數的值拷貝到新變數中(傳值賦值),所以改變其中一個並不影響另一個。這也適合於在很密集的迴圈中拷貝一些值例如大陣列。
1、= 賦值運算子:變數=表示式如:a=3;將a的值賦為32、/= 除後賦值:
變數/=表示式 如:a/=3;即a=a/33、*= 乘後賦值:變數*=表示式 如:
a*=3;即a=a*34、%= 取餘後賦值:變數%=表示式 如:a%=3;即a=a%35、+= 加後賦值:
變數+=表示式 如:a+=3;即a=a+36:-= 減後賦值:
變數-=表示式 如:a-=3;即a=a-3
20樓:哇哎西西
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。
21樓:匿名使用者
a+=b 等同於 a = a+b
a-=b 等同於 a = a-b
a*=b 等同於 a = a*b
a/=b 等同於 a = a/b
a%=b 等同於 a = a%b
a&=b 等同於 a = a&b &表示按位與a>>=b 等同於 a = a>>b >>表示右移a<<=b 等同於 a = a<
一開始可能會以為它是「等於」,其實不是的。它的作用是將一個表示式的值賦給一個左值。一個表示式或者是一個左值,或者是一個右值。
所謂左值是指一個能用於賦值運算左邊的表示式。左值必須能夠被修改,不能是常量。我們現在是用變數作左值,以後還可以看到,指標和引用也可以作左值。
複合的賦值運算子,又稱為帶有運算的賦值運算子,也叫賦值縮寫。
例如:i=i+j;可表示為 i+=j;這裡+=是複合賦值運算子。
同樣的共有10種這樣的運算子,它們是:
+= 加賦值;
-= 減賦值;
*= 乘賦值;
/= 除賦值;
%= 求餘賦值;
&= 按位與賦值;
| = 按位或賦值;
^= 按位異或賦值;
<<= 左移位賦值;
>>= 右移位賦值。
22樓:匿名使用者
是將=後的數字與前面進行運算後複製給前面的變數a+=b相當於a=a+b的意思
至於複合位運算子也是一樣的,資料進行與或非後進行賦值!
c語言賦值運算子
23樓:
你宣告為
無符來號char,則運算會按無符號源處bai理。
你宣告為有符號duchar,則運算會按有符號處zhi理。
例如:unsigned char c;
char d;
c='\376';
d = '\376';
printf("c=%d d=%d\n", c, d);
列印出:daoc=254 d=-2
24樓:匿名使用者
定義的意思是說這是無符號數,它可以表示0到255的所有數。11111110表示的是254。當你定義為unsigned int時,你就把它看成無符號數
c語言運算子,C語言 運算子 是怎麼運算的
9除以5商1餘4 不是說小數最後位是餘數 餘數就是在整數的除法中,只有能整除與不能整除兩種情況。當不能整除時,就產生餘數,所以餘數問題在小學數學中非常重要。餘數有如下一些重要性質 a,b,c均為自然數 1 餘數小於除數。2 被除數 除數 商 餘數 除數 被除數 餘數 商 商 被除數 餘數 除數。3 ...
C條件運算子,條件運算子和是什麼意思
條件表示式 bai 表示式du1?表示式2 表示式3 條件表示式的zhi執行順序 先dao求解表示式1,若為真則求版解表示式2,此時權表示式2的值就作為整個表示式的值。若表示式1的值為假,則求解表示式3,表示式3的值就是整個條件表示式的值。先計算x y 表示式1 然後 aa 表示式2 x y?bb ...
c語言中位移位運算子C語言中位移位運算子
位移運算子 符號 描述 左移 右移 位移運算子作用於其左側的變數,其右側的表示式的值就是移動的位數,運算結果就是移動後的變數結果。b a 2 就是a的值左移兩位並賦值為b。a本身的值並沒有改變。向左移位就是在低位補0,向右移位就是在高位上補0。右移時可以保持結果的符號位,也就是右移時,如果最高位為1...