c语言位运算符的优先级_c语言运算符优先级由高到低(C语言中文网)
生活随笔
收集整理的這篇文章主要介紹了
c语言位运算符的优先级_c语言运算符优先级由高到低(C语言中文网)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一、位運算(|& ^ ~)
這里我讓A = 11 1100 ,B = 1101
| 運算符 | 描述 | 實例 |
|---|---|---|
| & |
按位與操作,按二進制位進行”與”運算。運算規(guī)則: 0&0=0; 0&1=0; 1&0=0; 1&1=1; |
(A & B) 將得到 12,即為 0000 1100 |
| | |
按位或運算符,按二進制位進行”或”運算。運算規(guī)則: 0|0=0; 0|1=1; 1|0=1; 1|1=1; |
(A | B) 將得到 61,即為 0011 1101 |
| ^ |
異或運算符,按二進制位進行”異或”運算。運算規(guī)則: 0^0=0; 0^1=1; 1^0=1; 1^1=0; |
(A ^ B) 將得到 49,即為 0011 0001 |
| ~ |
取反運算符,按二進制位進行”取反”運算。運算規(guī)則: ~1=-2; ~0=-1; |
(~A ) 將得到 -61,即為 1100 0011,一個有符號二進制數(shù)的補碼形式。 |
| << | 二進制左移運算符。將一個運算對象的各二進制位全部左移若干位(左邊的二進制位丟棄,右邊補0)。 | A << 2 將得到 240,即為 1111 0000 |
| >> | 二進制右移運算符。將一個數(shù)的各二進制位全部右移若干位,正數(shù)左補0,負數(shù)左補1,右邊丟棄。 | A >> 2 將得到 15,即為 0000 1111 |
二、運算符優(yōu)先級
| 類別 | 運算符 | 結合性 |
|---|---|---|
| 后綴 | () [] -> . ++ – – | 從左到右 |
| 一元 | + – ! ~ ++ – – (type)* & sizeof | 從右到左 |
| 乘除 | * / % | 從左到右 |
| 加減 | + – | 從左到右 |
| 移位 | << >> | 從左到右 |
| 關系 | < <= > >= | 從左到右 |
| 相等 | == != | 從左到右 |
| 位與 AND | & | 從左到右 |
| 位異或 XOR | ^ | 從左到右 |
| 位或 OR | | | 從左到右 |
| 邏輯與 AND | && | 從左到右 |
| 邏輯或 OR | || | 從左到右 |
| 條件 | ?: | 從右到左 |
| 賦值 | = += -= *= /= %=>>= <<= &= ^= |= | 從右到左 |
| 逗號 | , | 從左到右 |
(逗號運算符:可以把多個表達式用逗號聯(lián)接起來(或者說,把這些表達式用逗號分開),構成一個更大的表達式。其中的逗號稱為逗號運算符,所構成的表達式稱為逗號表達式。逗號表達式中用逗號分開的表達式分別求值,以最后一個表達式的值作為整個表達式的值。)
總結
以上是生活随笔為你收集整理的c语言位运算符的优先级_c语言运算符优先级由高到低(C语言中文网)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: FLASH如何制作一个小车一直往前推的动
- 下一篇: 原型工具 墨刀_原型设计工具 axure