一、算數操作符
+ - * / %
1.除了%操作符之外,其他幾個操作符可以作用於整數和浮點數。
2.對於/操作符如果兩個運算元都為整數,執行整數除法。而只要有浮點數執行的就是浮點數除法。
3.%操作符的兩個運算元必須為整數。返回的是整數之後的餘數。
二、移位操作符
<< 左移操作符
>> 右移操作符
左移操作符
將乙個運算物件的各二進位制位全部左移若干位(左邊的二進位制位丟棄,右邊補0)。
例:a = a<< 2將a的二進位制位左移2位,右補0,
左移1位後a = a *2;
若左移時捨棄的高位不包含1,則每左移一位,相當於該數乘以2。
右移操作符
移位規則:
1.邏輯移位
左邊用0填充,右邊丟棄
2.算數移位
左邊用原該值的符號位填充,右邊丟棄
注意:對於移位操作運算子,不要移動負數字,這個是標準未定義的。
三、位操作符
& //按位與
| //按位或
^ //按位異或
注:他們的運算元必須是整數
參加運算的兩個資料,按二進位制位進行「與」運算。
運算規則:0&0=0; 0&1=0; 1&0=0; 1&1=1;
即:兩位同時為「1」,結果才為「1」,否則為0
例如:3&5 即 0000 0011& 0000 0101 = 00000001 因此,3&5的值得1。
參加運算的兩個物件,按二進位制位進行「或」運算。
運算規則:0|0=0; 0|1=1; 1|0=1; 1|1=1;
即 :參加運算的兩個物件只要有乙個為1,其值為1。
例如:3|5 即 00000011 | 0000 0101 = 00000111 因此,3|5的值得7。
參加運算的兩個資料,按二進位制位進行「異或」運算。
運算規則:0^0=0; 0^1=1; 1^0=1; 1^1=0;
即:參加運算的兩個物件,如果兩個相應位為「異」(值不同),則該位結果為1,否則為0。
四、賦值操作符=
復合賦值符:+=、-=、/=、*=、%=、>>=、<<=、&=、|=
五、單目操作符
! 邏輯反操作
- 負值
+ 正值
& 取位址
sizeof 運算元的長度(以位元組為單位)
~ 對乙個數的二進位制位按位取反
-- 前置 後置--
++ 前置 後置++
* 間接訪問操作符(解引用操作符)
(型別) 強制型別轉換
六、關係操作符
> 、 >=、<、<=、!=
(判斷不相等)、==(判斷相等)
注意:在寫**時千萬別把==寫成=,導致程式出現問題。
七、邏輯操作符
&& 邏輯與
|| 邏輯或
注意:一定要注意區分邏輯與、邏輯或和按位與、按位或的區別
例:1&2-->0 1&&2-->1
1|2--->3 1||2--->1
八、條件操作符
表示式1?表示式2:表示式3
九、逗號表示式
表示式1,表示式2,表示式3,表示式n
注意:逗號表示式,從左向右依次執行。整個表示式的結果是最後乙個表示式的結果。
十、下標引用、函式呼叫和結構體成員訪問
1.[ ] :乙個陣列名+乙個索引值(例:int arr[10];)
2.( ):函式呼叫操作符(接受乙個或者多個運算元:第乙個運算元是函式名,剩餘的運算元就是傳遞給函式的引數)
3.訪問乙個結構體的成員
① 結構體名.成員名
② 結構體指標->成員名
C語言操作符總結
c語言操作符總結 1.算數操作符 有浮點數則為浮點除法 全為整形 2.移位操作符 所有的移位操作符都是二進位制移位 左移 效果 左邊拋棄右邊補0.右移 效果 1 符號位 算術移位 原該值的符號位 2 0 邏輯移位 警告 不要移動負數字 3.位操作符 按位與 按位或 按位異或 注意 全都為二進位制位操...
C語言 操作符總結
1.運算操作符 加 可作為正號 例 a b 4 減 可作為正號 例 a b 5 乘 例 a b 除 例 a b 注意 分母不能為零 取餘 運算操作符的使用方法,基本與數學上的使用一致 2.賦值操作符 例 a 2 可讀為將2賦給a 注意 從右向左進行運算 3.其他符賦值操作符 例 a 1 相當於 a ...
C語言操作符總結
1.操作符的兩個運算元必須為整數,返回的是整除後的餘數。2.對於 操作符,如果兩個運算元都是整數則執行整數除法,只要有浮點數就執行浮點數除法。左移操作符 右移操作符 左邊拋棄,右邊補0 右移分為兩種 1.邏輯移位 左邊用0補,右邊丟棄 2.算術移位 左邊用原來的符號位填充,右邊丟棄 符號位中0表示正...