C位操作符

2021-08-15 22:37:12 字數 1115 閱讀 1668

1. 按位與(&)

如果兩個位都是1,則結果為1

否則結果為0

示例:5&2

00000101         (5的二進位制)

00000010         (2的二進位制)

00000000          (5&2結果二進位制,10進製結果為0)

2. 按位或(|)

如果兩個位至少有乙個是1,則結果為1

否則結果為0

示例:5|2

00000101         (5的二進位制)

00000010         (2的二進位制)

00000111          (5|2結果二進位制,10進製結果為7)

3. 按位異或(^)

如果兩個位不相同,則結果為1

否則結果為0

示例:5^2

00000101         (5的二進位制)

00000010         (2的二進位制)

00000111          (5^2結果二進位制,10進製結果為7)

4.按位非(~)

如果當前位為1,則結果為0

否則結果為1

示例:~5

00000101         (5的二進位制)

111111010          (~5結果二進位制,10進製結果為-6,這塊結果為負數,需要注意)

5. 左移(<<)

把位向左移動兩位,即最右邊補兩個0

示例:5<<2

00000101         (5的二進位制)

<<2                 (向左移動2位)   

0000010100

______________

00010100         (5<<2結果二進位制,10進製結果為20)

6. 右移(>>)

把位向右移動兩位,即最左邊邊補兩個0

示例:5>>2

00000101         (5的二進位制)

>>2                 (向右移動2位)   

0000000101

______________

00000001         (5>>2結果二進位制,10進製結果為1)

c 位操作符

我們知道,任何資訊在計算機中都是以二進位制的形式儲存的。位操作符就是對資料按二進位制進行運算的操作符。c 語言中的位操作符有 與 或 異或 取補 左移 右移 其中,取補只有乙個運算元,而其它的位操作符都有兩個運算元。這些運算都不會產生溢位。位操作符的運算元為整型或者是可以轉換為整型的任何其它型別。與...

c語言操作符 位操作符 移位操作符

1 按位操作符 1.1 按位 與 雙目運算子 僅當兩個運算元都為1時,結果為1,否則為0。參與運算的數以補碼方式出現。例 9 5 1 0000 1001 9的補碼 0000 0101 5的補碼 0000 0001 1的補碼 應用 a 通常將某些位清零或保留某些位。例如 將a的高八位清零,保留低八位,...

c 按位操作符

位運算是指按二進位制進行的運算。在程式中,常常需要處理二進位制位的問題。c c 語言提供了6個位操作運算子。這些運算子只能用於整型運算元,即只能用於帶符號或無符號的char,short,int與long型別。在實際應用中,建議用unsigned整型運算元,因為帶符號運算元可能因為不同機器結果不同。c...