一篇文章帶你了解C語言操作符
一、操作符分類
C語言的操作符有很多,我這里將其分為十類,然后再對每一類中的操作符進行詳細講解。
1、算術操作符
2、移位操作符
3、位操作符
4、賦值操作符
5、單目操作符
6、關系操作符
7、邏輯操作符
8、條件操作符
9、逗號表達式
10、其它操作符
二、算術操作符
1、這五個操作符分別是加、減、乘、除、求余。
2、對于 / 操作符如果兩個操作數(shù)都為整數(shù),執(zhí)行整數(shù)除法。而只要有浮點數(shù)執(zhí)行的就是浮點數(shù)除 法。
3、除了 % 操作符之外,其他的幾個操作符可以作用于整數(shù)和浮點數(shù)。% 操作符的兩個操作數(shù)必須為整數(shù),返回的是整除之后的余數(shù)。
三、移位操作符
左移操作符和右移操作符操作的對象都是二進制數(shù)。
1、左移操作符
左移操作符的移位規(guī)則是:左邊拋棄,右邊補0。
但是num沒有被賦值的情況下,自身的值不會發(fā)生變化
2、右移操作符
右移操作符移位規(guī)則有兩種:
2.1算術移位
左邊用原該值的符號位填充,右邊丟棄
2.2邏輯移位
左邊用0填充,右邊丟棄
注意: 對于移位運算符,不要移動負數(shù)位,這個是標準未定義的。
四、位操作符
1、按位與
2、按位或
3、按位異或
4、一道練習題
不能創(chuàng)建臨時變量(第三個變量),實現(xiàn)兩個數(shù)的交換
兩個相同的數(shù)異或為0.
五、賦值操作符
1、賦值操作符(=)是一個很棒的操作符,他可以讓你得到一個你之前不滿意的值。也就是你可以對其重新賦值。
2、賦值操作符可以連續(xù)使用
3、復合賦值符
這些運算符都可以寫成復合的效果。
例如:
六、單目操作符
1、邏輯反操作
加上!與之形成相反的邏輯,例如=,加上!變?yōu)椴坏扔?。一個非零的值加上!輸出為0。
2、取地址
3、sizeof
sizeof可以計算操作數(shù)的類型長度(以字節(jié)為單位)
4、++和--運算符
4.1前置++和--
4.2后置++和--
七、關系操作符
這些關系運算符比較簡單,沒什么可講的,但是我們要注意一些運算符使用時候的陷阱。
要注意: 在編程的過程中== 和=不小心寫錯,導致的錯誤。
八、邏輯操作符
&& 邏輯與
|| 邏輯或
這里要注意區(qū)分邏輯與和按位與 、邏輯或和按位或。
邏輯與和或的特點:
當a=0,0&&任何數(shù)都為0,已經(jīng)確定結果,后面的算式不再計算
九、條件操作符
exp1 ? exp2 : exp3
上面兩種寫法的邏輯是相同的。
十、逗號表達式
exp1, exp2, exp3, …expN
逗號表達式,就是用逗號隔開的多個表達式。
逗號表達式,從左向右依次執(zhí)行。整個表達式的結果是最后一個表達式的結果。
十一、其它操作符
1.下標引用操作符[ ]
操作數(shù)是一個數(shù)組名 + 一個索引值
2.函數(shù)調用操作符( )
接受一個或者多個操作數(shù):第一個操作數(shù)是函數(shù)名,剩余的操作數(shù)就是傳遞給函數(shù)的參數(shù)。
3.訪問一個結構的成員
. 結構體.成員名
-> 結構體指針->成員名
總結
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注腳本之家的更多內容!
相關文章
C語言中的fscanf()函數(shù)與vfscanf()函數(shù)使用
這篇文章主要介紹了C語言中的fscanf()函數(shù)與vfscanf()函數(shù)使用,是C語言入門學習中的基礎知識,需要的朋友可以參考下2015-08-08Qt實現(xiàn)導出QTableWidget/QTableView數(shù)據(jù)
這篇文章主要介紹了在Qt中實現(xiàn)將QTableWidget或者QTableView中的數(shù)據(jù)直接導出的示例代碼,文中的示例代碼講解詳細,感興趣的可以了解一下2022-01-01C++實現(xiàn)學生信息管理系統(tǒng)(Map實現(xiàn))
這篇文章主要為大家詳細介紹了C++實現(xiàn)學生信息管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-06-06C++中智能指針最常用的shared_ptr和unique_ptr
C++中的智能指針最常用的是shared_ptr和unique_ptr,C++新手最常問的問題是我從一個函數(shù)中拿到unique_ptr,但要轉成shared_ptr才能使用,要怎么轉換?同理是否能將shared_ptr轉換成unique_ptr,面對這些問題,跟隨小編一起看看吧2022-08-08