操作符(C語言)

2021-09-25 20:54:11 字數 2012 閱讀 7991

(1)算術操作符:+ - * / %

(2)移位操作符:

<<   //左移操作符    

>> //右移操作符

(3)位操作符:

`&    //按位與  

| //按位或

^ //按位異或`

(4)賦值操作符:

復合賦值操作符:

+=

*=/=

%=>>=

<<=

&=|=

^=

這些運算子都可以寫成復合的效果。

(5)單目操作符:

! 邏輯反操作

- 負值

+ 正值

& 取位址

sizeof 運算元的型別長度(以位元組為單位)

~ 對乙個數的二進位制按位取反

-- 前置、後置--

++ 前置、後置++

* 間接訪問操作符(解引用操作符) (型別) 強制型別轉換

(6)關係操作符:

>

>=

<

<=

!= 用於測試「不相等」

== 用於測試「相等

(7)邏輯操作符:

&& 邏輯與

|| 邏輯或

(8)條件操作符:

exp1 ? exp2 : exp3
exp1成立執行exp2;否則執行exp3。

(9)逗號表示式:

exp1, exp2, exp3, …expn
逗號表示式,從左向右依次執行。整個表示式的結果是最後乙個表達

式的結果。

(10)下標引用、函式呼叫和結構成員:

().

(11)操作符的屬性:

複雜表示式的求值有三個影響的因素。

優先順序從高到低的操作符表:

() 聚組 

() 函式呼叫

[ ] 下標引用

. 訪問結構成員

-> 訪問結構指標成

++ 字尾自增

-- 字尾自減

! 邏輯反

~ 按位取反

+ 單目,表示正值

- 單目,表示負值

++ 字首自增

-- 字首自減

* 間接訪問

& 取位址

sizeof 取其長度,以字示(型別) 型別轉換

* 乘法

/ 除法

% 整數取餘

+ 加法

- 減法

<< 左移位

>> 右移位

> 大於

>= 大於等於

< 小於

<= 小於等於

== 等於

!= 不等於

& 位與

^ 位異或

| 位或

&& 邏輯與

|| 邏輯或

?: 條件操作符

= 賦值

+= 以...加

-= 以...減

*= 以...乘

/= 以...除

%= 以...取模

<<= 以...左移

>>= 以...右移

&= 以...與

^= 以...異或

|= 以...或

, 逗號

(12)隱式型別轉換:

c的整型算術運算總是至少以預設整型型別的精度來進行的。

為了獲得這個精度,表示式中的字元和短整型運算元在使用之前被轉換為普通整型,這種轉換稱為整型提公升。

//例項1 

char a,b,c;

a = b + c;

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

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

C語言 , 操作符

例如 define to string s s 將會使編譯器把以下命令 cout to string hello world endl 理解為cout hello world endl 例如 define concatenate x,y x y int xy 10 將會使編譯器把 cout conc...

C語言操作符

操作符的分類 1 算術操作符 2 移位操作符 3 位操作符 4 賦值操作符 5 單目操作符 6 關係操作符 7 邏輯操作符 8 條件操作符 9 逗號表示式 1 算術操作符 1 除了 操作符之外,不能用於浮點數。2 對於 操作符如果兩個運算元都為整數,執行整數除法。而只要有浮點數執行的就是浮點數除法。...