1運算符分類
- 算數運算符
- 關係運算符
- 邏輯運算符
- 位操作運算符
- 賦值運算符
- 條件運算符
- 逗號運算符
- 指針運算符
- 求字節運算符
- 特殊運算符
2運算符的優先級
運算符的優先級分15等級,1級最高,15級最低。
同一優先級的運算符,運算次序由結合方向所決定
!>算術運算符>關係運算符>&&>||>賦值運算符
表達式中,優先級高的的先於低的運算,優先級相同的時候,按照運算符的結合性運算。
3運算符的結合性
左結合:(算數運算符的結合方向)運算對象先與左面的運算結合。
右結合:自右至左,例如賦值運算符。
4表達式及分類
表達式:將同類型的數據(常量,變量和函數等)用運算符按照一定規則連接起來的式子。表達式一定有返回值。表達式後加分號,構成表達式語句。
分類:算術表達式、關係表達式和邏輯表達式。
5常用運算符
(1) 算數運算符(左結合):+ - * / %
兩個整數相除的結果爲整數
兩數中有一個數是float或double型數時,結果是double型,因爲所有float都按double型運算
(2)賦值運算符(右結合) =
作用:將一個數據賦給一個變量,也可以將一個表達式的值賦給一個變量。
變量 = 表達式/數據
(3) 複合賦值運算符 +=、-=、*=、/=、%=、&=、|=、^=、>>=、<<=
先運算後賦值。
(4) 自增自減運算符 i++; i–;++i;–i;
i++和++i的區別:
前綴表達式 ++i作用和i=i+1一樣
先讓變量i自增,之後用自增之後的i值作爲表達式的值
後綴表達式 i++
先用i值作爲表達式的值,之後i的值再自增
(5) 逗號運算符
作用:把兩個表達式連接到一起,形成逗號表達式。
求值過程:分別求每個表達式的值,以最後的表達式的值作爲整個表達式的值。
逗號表達式不注重求值的結果,注重求值過程中哪些變量的值發生了變化。
(6) 關係運算符(左結合)>、<、>=、<=、==、!=
所有的數值都有真假性,非0即真,只有0爲假。
關係運算符的返回值只有0和1.
(7) 邏輯運算符 (或)||、&&(與)、(非)!
或(左結合):兩個表達式只要有一個真值,整個表達式的值就爲真。
與(左結合):兩個表達式的值都爲真,整個表達式的值才爲真。
非(右結合):非真即假,非假即真。
(8) 三目運算符(右結合) ? :
條件表達式? 表達式1:表達式2
如果條件表達式的值爲真,表達式1的值爲整個表達式的值。
如果條件表達式的值爲假,表達式2的值爲整個表達式的值。
注意:?和:是成對出現。
int max(int a,int b)
{
return a>b?a:b;
}