C語言 初成長 操作符和表示式

2021-08-09 08:54:43 字數 1155 閱讀 6812

在c語言中,有各式各樣的操作符,而且操作符的運用往往和表示式結合在一起,下面先給操作符乙個簡單的分類:

算術操作符:    +    -     *     /      %  

對應數學裡面的  加減乘除餘      只有%左右兩邊運算元都必須是整數。

移位操作符:    <<   左移操作符

>>    右移操作符

因為在計算機中,對數的儲存使用的是二進位制,並且是該數的補碼,而   <<   則是把該二進位制數整體左移一位,左邊丟棄右邊補0。對於  >>  則分兩種情況:                             邏輯右移:左邊補0,右邊丟棄。算術右移:左邊補符號位,右邊丟棄。對於  a>>1;還有除2的效果,應為c語言中,除法是算的最慢的,所以適當情況下可以用

>>1代替/2。

位操作符:     &    |       ^

&  按位與     a&b  把a和b每個二進位制位數乙個乙個與比較,兩個都為1則該位為1,有乙個為0則為0,比如  a 在記憶體中為00001110    b在記憶體中為00000111    則比

較結果為00000110

|   按位或     有乙個為1  則為1,都為0才是0,同樣是上面的例子,比較結果為00001111 

^  按位異或   不相同為1  相同為0,比較結果為00001001

邏輯操作符:  &&     ||    !

&&   邏輯與    都為真 結果才為真,a++&&++b&&c++   在這裡只要前面有為假的結果,後面就不計算,如果a=0,那麼b  c  還是原來的值,不會增1。

||      邏輯或    有乙個為真,結果就是真,  只要前面的結果為真,後面就不計算

!     邏輯非    用於邏輯反操作   就和數字的正負號一樣,假真為假   假假為真

復合賦值操作符:   +=    >>=   &=

在c語言中  a=a+1  與a+=1,是一樣的 後面的同理。

關係操作符:     >   <  ==   >=   <=

對應 大於  小於   等於  大於等於  小於等於

條件操作符:   a?x:y

如果a為真,返回x;如果a為假返回y。

逗號表示式:    a++,b--,++c,--d

從左往右依次執行,最後乙個表示式的結果為該表示式的結果

C語言操作符和表示式

5 2 2 5 2 1注 1.除 操作符之外,其他的幾個操作符均可作用與整數和浮點數,但需要注意結果列印的格式和精度缺失。2.對於 操作符,如果兩個數都為整數,執行整數除法,而只要有浮點數執行的就是浮點數除法。3.操作符的兩個運算元必須為整數。返回的是整除之後的餘數。左移操作符 移位規則 左邊拋棄 ...

C語言 操作符和表示式

算術操作符 c提供了所有常用的算術操作符 除了 操作符,其餘的操作符是既適用於浮點型別又適用於整數型別 為取模操作符,接受兩個整型運算元,把左運算元除以右運算元,但其返回的值是餘數而不是商。移位操作符 二進位制 0和1 移位操作只是簡單地把乙個值的位向左或向右移動。左移位中,值最左邊的幾位被丟棄,右...

C語言 操作符和表示式

加法操作符 減法操作符 乘法操作符 除法操作符 取餘操作符 注意 右移操作符 左移操作符 注意 原值 0000 1011 11 1 0000 0101 5 11 2 1 2 0000 0010 2 11 2 2原值 0000 1011 11 1 0001 0110 22 11 2 1 2 0010 ...