C語言操作符

2021-08-18 07:02:21 字數 1226 閱讀 6779

c語言操作符總體可分為:算數操作符,移位操作符,位操作符,賦值操作符,復合賦值符,單目操作符,關係操作符,邏輯操作符,條件操作符和逗號操作符。

今天就說一下其中一些需要注意的地方。

算數操作符中,/ 操作符兩邊都是整數時,執行整除運算,其他條件下執行浮點數除法。%操作符它只接受兩個整形運算元。

移位操作符,其中需要注意的是:無符號值執行的所有移位操作都是邏輯移位,但對於有符號值採用邏輯移位還是算數移位取決於編譯器。

注意不要使用 例:a<

位操作符,  

&  | ^

&特點:某一位&1為它本身,所以&可以取出二進位制中的某位。

|有乙個為真則為真,全假則假。

^相同為假,相異為真。

賦值操作符=

復合賦值符+=  -=  *=  /=  %=  <<=  >>=  &=  ^=  |=

單目操作符!  ++  -  &  sizeof  ~  --  + -  型別

&取位址符

sizeof;計算長度

sizeof (int);  sizeof(num);  sizeof num;這三種方法都可以,但不能表示為 sizeof int;

++a=10;這種表示式是不正確的,++a的結果是a值的拷貝,並不是變數本身,無法向乙個值進行賦值。

關係操作符<  >  >=  <=  ==  !=  注意==與=區分。

邏輯運算子&&  ||

&&:邏輯與 1&&1為真,當&&左邊為0時,右邊將不再計算。

||:邏輯或 1||0為真,當左邊為1時,右邊將不再計算。

條件操作符 exp1?exp2 : exp3

逗號操作符,從左向右依次執行。整個表示式的結果是最後乙個表示式的結果。

例:

至此再提出乙個操作符優先順序的問題

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 對於 操作符如果兩個運算元都為整數,執行整數除法。而只要有浮點數執行的就是浮點數除法。...