
C語言中的操作符主要分為算術(shù)操作符、移位操作符、位操作符、賦值操作符、單目操作符、關(guān)系操作符、邏輯操作符、條件操作符、逗號表達(dá)式、下標(biāo)引用、函數(shù)調(diào)用和結(jié)構(gòu)成員。我將分成兩篇文章為大家詳細(xì)介紹以上所有操作符。
操作符詳解: 算術(shù)操作符算術(shù)操作符主要有以下五種+ - * / %。下面為部分代碼示例
①+
#includeint main()
{int a = 20;
int b = 10;
printf("%d\n", a + b);
return 0;
} 運(yùn)行結(jié)果:
②-
#includeint main()
{int a = 20;
int b = 10;
printf("%d\n", a - b);
return 0;
} 運(yùn)行結(jié)果:
③*
#includeint main()
{int a = 20;
int b = 10;
printf("%d\n", a * b);
return 0;
}
運(yùn)行結(jié)果:
④%
#includeint main()
{int a = 20;
int b = 10;
printf("%d\n", a % b);
return 0;
} 運(yùn)行結(jié)果:
⑤/
#includeint main()
{int a = 20;
int b = 10;
printf("%d\n", a / b);
return 0;
} 運(yùn)行結(jié)果:
算術(shù)操作符的注意事項(xiàng):
#includeint main()
{int a = 20;
float b = 3.0;
printf("%.2f\n", a / b);
return 0;
} 運(yùn)行結(jié)果:
3. % 操作符的兩個操作數(shù)必須為整數(shù)。返回的是整除之后的余數(shù)。
移位操作符主要包含有:<<( 左移操作符) >>(右移操作符)
注意:移位操作符的主要對象為整數(shù)類型
在學(xué)習(xí)移位操作符之前,我們需要先了解進(jìn)制的表達(dá)形式,整數(shù)的2進(jìn)制表達(dá)形式有3種,分別為原碼、反碼、補(bǔ)碼。內(nèi)存中存儲的起始是:補(bǔ)碼的二進(jìn)制。所以在參與移位操作的時候,移動后都是補(bǔ)碼。
按照一個數(shù)的正負(fù),直接寫出它的二進(jìn)制表示形式得到的就是原碼。
正數(shù)
正數(shù)的原碼、反碼、補(bǔ)碼是相同的
負(fù)數(shù)
負(fù)數(shù)的反碼和補(bǔ)碼需要通過計算得到結(jié)果
①負(fù)數(shù)的反碼是原碼的符號位不變,其他位按位取反,就是反碼
②負(fù)數(shù)的補(bǔ)碼是反碼+1
③0表示為正,1表示為負(fù)
由于整型為4個字節(jié),占32個bit。
eg:
int a=10;
//原碼00000000000000000000000000001010
//反碼00000000000000000000000000001010
//補(bǔ)碼00000000000000000000000000001010int a=-10;
//原碼:10000000000000000000000000001010
//補(bǔ)碼:11111111111111111111111111110101
//反碼:11111111111111111111111111110110左移操作符左移操作符的移位規(guī)則為:左邊拋棄,右邊補(bǔ)0。
#includeint main()
{int a = 10;
int b = a<< 1;
printf("%d\n", b);
return 0;
} 詳解過程:
運(yùn)行結(jié)果:
對于負(fù)數(shù)來說‘
#includeint main()
{int a = -10;
int b = a<< 1;
printf("%d\n", b);
return 0;
} 詳解過程:
運(yùn)行結(jié)果:
右移操作符分為兩種,分別是:
①、邏輯移位:左邊用0填充,右邊丟棄
②、算術(shù)移位:左邊用原該值的符號位填充,右邊丟棄
#includeint main()
{int a = -10;
int b = a >>1;
printf("%d\n", b);
return 0;
} 運(yùn)行結(jié)果:
位操作符分別有:
& //按位與
| //按位或
^ //按位異或他們也是針對二進(jìn)制位進(jìn)行計算的
注:他們的操作數(shù)必須是整數(shù)。
①、 &
規(guī)則為:對應(yīng)的二進(jìn)制位有0,則為0,兩個同時為1,才為1
#includeint main()
{int a = 2;
int b = -1;
printf("%d\n", a & b);
return 0;
} 運(yùn)行結(jié)果:
②、|
規(guī)則為:對應(yīng)的二進(jìn)制位有1則為1,兩個同時為0則為0
#includeint main()
{int a = 3;
int b = -5;
printf("%d\n", a | b);
return 0;
} 運(yùn)行結(jié)果:
③、^
規(guī)則為:按2進(jìn)制位異或,對應(yīng)的二進(jìn)制位:相同為0,相異為1。
#includeint main()
{int a = 3;
int b = -5;
printf("%d\n", a ^ b);
return 0;
} 運(yùn)行結(jié)果:
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
網(wǎng)站名稱:C語言——操作符詳解(上)-創(chuàng)新互聯(lián)
網(wǎng)站路徑:http://chinadenli.net/article46/hhihg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、網(wǎng)站導(dǎo)航、動態(tài)網(wǎng)站、App設(shè)計、定制網(wǎng)站、軟件開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容