由於操作符以後會經常用到,面試題裡經常會出現關於操作符的選擇題,今天我就來總結一下c語言中常用的操作符。
我們常用的c語言操作符主要分為以下幾種:算術操作符、移位操作符、位操作符、賦值操作符、單目操作符、關係操作符、邏輯操作符、條件操作符、逗號表示式下標引用、函式呼叫和結構成員。
算術操作符:
+ - * /
%1. 除了%
操作符之外,其他的幾個操作符可以作用於整數和浮點數。
2. 對於
/操作符如果兩個運算元都為整數,執行整數除法,得到的結果是整數值。而只要有浮點數執行的就是浮點數除法,得到的結果是浮點數(也就是小數)。例如:1/2=0,1.0/2=0.5。
3. %
操作符的兩個運算元必須為整數。得到的是整除之後的餘數。
移位操作符:
<<
、>>
《左移操作符
左邊拋棄、右邊補
0右移操作符
首先右移運算分兩種:
1. 邏輯移位
左邊用0
填充,右邊丟棄
2. 算術移位
左邊用原該值的符號位填充(0或1),右邊丟棄
位操作符:
& (按位與)、|(按位或)、^(按位異或)
其運算元必須是整數,且均為二目運算
賦值操作符:=
可以給變數重新賦值
復合賦值符:
+=、-=、*=、/=、%=、>>=、<<=、&=、|=、^=
這些運算子都可以寫成復合的效果,比如"n += 1"
就是給變數n自加1
單目操作符:
!邏輯反操作
- 負值
+ 正值
& 取位址
sizeof
運算元的型別長度(以位元組為單位)
~ 對乙個數的二進位制按位取反
-- 前置(先賦值再使用)、後置
--(先使用再賦值)
++ 前置、後置
++*
間接訪問操作符
(解引用操作符)(
型別)
強制型別轉換
關係操作符:
>、>=、<、<=、!= (
用於測試
「不相等
」)、== (
用於測試「相等
」)邏輯操作符:
&& 邏輯與、
||邏輯或
注:1&2--0,1&&2--1,1|2--3,1||2--1
條件操作符
exp1 ? exp2
: exp3
先計算表示式1,若表示式1為真,直接到表示式2,若表示式1為假,則繞過表示式2,到表示式3
逗號表示式:
就是用逗號隔開的多個表示式
exp1, exp2, exp3,
…expn
逗號表示式,從左向右依次執行,整個表示式的結果是最後乙個表示式的結果
下標引用、函式呼叫和結構成員
1. [ ]
運算元:乙個陣列名
+ 乙個索引值
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表示正...