3 C 語言學習 運算子與表示式

2022-09-12 01:27:16 字數 3746 閱讀 8171

運算子型別

作用算術運算子

用於處理四則運算

賦值運算子

用於將表示式的值賦給變數

比較運算子

用於表示式的比較,並返回乙個真值或假值

邏輯運算子

用於根據表示式的值返回真值或假值

位運算子

用於處理資料的位運算

sizeof運算子

用於求位元組數長度

運算子術語

示例結果+正號

+33-負號

-3-3+加

10 + 515-

減10 - 55*

乘10 * 550/

除10 / 52%

取模(取餘)

10 % 31++

前自增a=2; b=++a;

a=3; b=3;

++後自增

a=2; b=a++;

a=3; b=2;

--前自減

a=2; b=--a;

a=1; b=1;

--後自減

a=2; b=a--;

a=1; b=2;

備註:運算子

術語示例結果=

賦值a=2; b=3;

a=2; b=3;

+=加等於

a=0; a+=2;

a=2;

-=減等於

a=5; a-=3;

a=2;

*=乘等於

a=2; a*=2;

a=4;

/=除等於

a=4; a/=2;

a=2;

%=模等於

a=3; a%2;

a=1;

c 語言的比較運算中, 「真」用數字「1」來表示, 「假」用數字「0」來表示。

運算子術語

示例結果

==相等於

4 == 30!=

不等於4 != 3

1<

小於4 < 3

0>

大於4 > 3

1<=

小於等於

4 <= 3

0>=

大於等於

4 >= 1

1運算子

術語示例結果!

非!a如果a為假,則!a為真; 如果a為真,則!a為假。&&與

a && b

如果a和b都為真,則結果為真,否則為假。||或

a ||b

如果a和b有乙個為真,則結果為真,二者都為假時,結果為假。

備註:優先順序

運算子名稱或含義

使用形式

結合方向說明1

陣列下標

陣列名[常量表示式]

左到右--1()

圓括號(表示式)/函式名(形參表)

左到右--1.

成員選擇(物件)

物件.成員名

左到右--

1->

成員選擇(指標)

物件指標->成員名

左到右--2-

負號運算子

-表示式

右到左單目運算子2~

按位取反運算子

~表示式

右到左單目運算子2++

自增運算子

++變數名/變數名++

右到左單目運算子2--

自減運算子

--變數名/變數名--

右到左單目運算子2*

取值運算子

*指標變數

右到左單目運算子2&

取位址運算子

&變數名

右到左單目運算子2!

邏輯非運算子

!表示式

右到左單目運算子

2(型別)

強制型別轉換

(資料型別)表示式

右到左--

2sizeof

長度運算子

sizeof(表示式)

右到左--3/

除表示式/表示式

左到右雙目運算子3*

乘表示式*表示式

左到右雙目運算子3%

餘數(取模)

整型表示式%整型表示式

左到右雙目運算子4+

加表示式+表示式

左到右雙目運算子4-

減表示式-表示式

左到右雙目運算子

5<<

左移變數《表示式

左到右雙目運算子

5>>

右移變數》表示式

左到右雙目運算子

6>

大於表示式》表示式

左到右雙目運算子

6>=

大於等於

表示式》=表示式

左到右雙目運算子

6<

小於表示式《表示式

左到右雙目運算子

6<=

小於等於

表示式<=表示式

左到右雙目運算子7==

等於表示式==表示式

左到右雙目運算子7!=

不等於表示式!=表示式

左到右雙目運算子8&

按位與表示式&表示式

左到右雙目運算子9^

按位異或

表示式^表示式

左到右雙目運算子10|

按位或表示式|表示式

左到右雙目運算子

11&&

邏輯與表示式&&表示式

左到右雙目運算子

12||

邏輯或表示式||表示式

左到右雙目運算子

13?:

條件運算子

表示式1?表示式2:表示式3

右到左三目運算子14=

賦值運算子

變數=表示式

右到左--

14/=

除后賦值

變數/=表示式

右到左--

14*=

乘後賦值

變數*=表示式

右到左--

14%=

取模後賦值

變數%=表示式

右到左--

14+=

加後賦值

變數+=表示式

右到左--

14-=

減後賦值

變數-=表示式

右到左--

14<<=

左移後賦值

變數<<=表示式

右到左--

14>>=

右移後賦值

變數》=表示式

右到左--

14&=

按位與後賦值

變數&=表示式

右到左--

14^=

按位異或後賦值

變數^=表示式

右到左--

14|=

按位或後賦值

變數|=表示式

右到左--15,

逗號運算子

表示式,表示式,…

左到右--

資料有不同的型別,不同型別資料之間進行混合運算時必然涉及到型別的轉換問題。

轉換的方法有兩種:

型別轉換的原則:占用記憶體位元組數少(值域小)的型別,向占用記憶體位元組數多(值域大)的型別轉換,以保證精度不降低。

強制型別轉換指的是使用強制型別轉換運算子,將乙個變數或表示式轉化成所需的型別,其基本語法格式如下所示:

(型別說明符) (表示式)
#include 

​int main()

C語言學習 運算子與表示式

關係表示式 條件表示式 邏輯表示式 逗號表示式 1 左右運算元都必須是整型 2 左右運算元都是整型的話,得到的也是整型,有小數的話被忽略 左右運算元都是浮點型,得到的也是小數。例如a b a a a 注 a b 3 a a b 3 0代表false,1代表true,非零即為真 例如printf d ...

C語言運算子與表示式

運算子是一種向變異程式說明乙個特定的數學或邏輯運算的符號。主要有三大類 算術運算子 關係運算與邏輯運算子 按位運算子。除此之外,還有一些用於完成特殊任務的運算,如賦值運算子 條件運算子 逗號運算子等。c語言的運算子歸納如下 1 算術運算子 2 關係運算子 3 邏輯運算子 4 位運算子 按位與 運算子...

C語言 運算子與表示式

1.運算子 用於進行某種運算的符號 通過涉及到的數目分為單目運算子 i 雙目運算子 三目運算子 判斷 a b 在c語言中a b 是不等價與 b a 的,ru i i j 與 i j i c語言運算優先順序,單目運算子 算術運算子 關係運算子 邏輯運算子 條件運算子 賦值運算子 逗號運算子 1 算術運...