C語言 操作符小結

2021-08-10 22:36:04 字數 2559 閱讀 8541

為了您的閱讀體驗,請移步至專欄文章c語言·操作符小結(排版原因,尤其是使用手機閱讀的人

c語言中操作符分為以下幾類:

算術操作符:

+  -  *  /   %  1.除了%操作符之外,其他的幾個操作符可以作用於整數和浮點數。

2.對於/操作符如果兩個運算元都為整數,執行整數除法。而只要有浮點數執行

的就是浮點數除法。3.%操作符的兩個運算元必須為整數。返回的是整除之後的餘數。

移位操作符:

<<   >>

分別是左移和右移操作符。左邊拋棄,右邊補0

>>右移操作符運算分為邏輯移位和算術移位兩種。移位規則分別是「左邊用0填充,右邊丟棄」

「左邊用原該值的符號位填充,右邊丟棄」

位操作符    :

&  |  ^

分別是與,或,非。需要注意的是他們的運算元都必須是整數。

賦值操作符:

= +=  -= *=  /=  %=

等等,賦值操作符可以重新給變數賦乙個新的值。

單目操作符:

!-  +  &  sizeof    ~   ++   --    *   (型別)

。!-  +  & 

~  *  (型別)

分別是邏輯反操作,負值,

正值,取位址,對乙個數的二進位制按位取反,解引用操作符,強制型別轉換。++和--是自增,

自減運算子,分為前置和後置。前置是先用值,用完當前值以後在當前值的基礎上+1或-1,後

置是先在當前值的基礎上+1或-1以後再用加減以後的值。sizeof可以求變數(型別)所佔空間

的大小。

void test1(int arr)

void test2(char ch)

關係操作符:

>   >=   <   <=   !=   ==

其中!=和==用於測試不相等和相等,在這裡需要注意的是在實際寫

**不要將

==和=寫錯。

==是用於判斷而=是用於賦值。

邏輯操作符:

&&  ||

分別為邏輯與(一假則假)和邏輯或(一真則真)。使用時應注意邏輯與和按位

與,邏輯或和按位或的區別。例如:

1&2------->0   

1&&2------->1              1|2------->3    1||2------->1  

#include

int main()

執行結果分別是1,2,3,4(先用a=0和後面的進行邏輯與運算,然後a=a+1,因為a=0,而

邏輯與運算的特點是一假則假,因此後面的不需要再進行計算)和1,2,3,4(

先用a=0和

後面的進行

邏輯或運算,然後a=a+1,第乙個或運算右邊是先b=b+1然後再與a=0或運算,

因為邏輯或運

算的特點是一真則真,所以後面的不需要再進行計算

)。條件操作符:

exp1 ? exp2 :exp3 

if(a>b)

max=a;

else

max=b;

等價於max=(a>b)?a:b;

如果exp1

成立則執行

exp2

,否則執行

exp3。

逗號表示式:

exp1 , exp2 ,exp3·····expn

逗號表示式就是用逗號隔開的多個表示式。從左向右依次

執行,最後的結果就是最後乙個表示式的結果。例如:

int a=1,b=2;int c=(a>b,a=b+10,b=a+1);

那麼這裡的c就應該等於13。

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

[ ]  ()  

.->  

分別為下標引用,函式呼叫和結構成員。

[ ]例如arr[2],

[ ]接收兩個運算元,即

arr(陣列名)和2(下標)。()用於函式的呼叫,例如:

void test()

int main()

()至少接收乙個運算元即函式名。.的使用形式為 結構體.成員名 。->的使用形式為 

結構體指標->成員名 。 例如:

#include

struct stu

;void set_age1(struct stu stu)

void set_age2(struct stu* pstu)

C語言 操作符小結

c語言中操作符分為以下幾類 算術操作符 1.除了 操作符之外,其他的幾個操作符可以作用於整數和浮點數。2.對於 操作符如果兩個運算元都為整數,執行整數除法。而只要有浮點數執行的就是浮點數除法。3.操作符的兩個運算元必須為整數。返回的是整除之後的餘數。移位操作符 1 左移操作符的移位規則是左邊拋棄,右...

C語言操作符小結

算數操作符 正常運算就好,但 和 較為特殊需要注意!移位操作符 ps 不要對負數進行移位操作,這是未定義行為!include include intmain 位操作符 ps 按二進位制位操作,運算元必須為整數 賦值操作符 修改變數的值,可以連續連續賦值 例 a x y 1 但強烈不建議這麼寫,可讀性...

c 操作符過載小結

對於函式過載,大家都不陌生。所謂過載函式,是指 具有相同的函式名,具有不同的特徵標,這裡的特徵標不同具體為 具有的引數型別,引數個數不同,且只要有乙個不同就構成過載。注意 與返回型別無關。操作符過載 我們一般將其作為類的成員函式,但也不必一定是成員函式,但必須至少有乙個運算元是使用者定義的型別 如果...