上圖中按照運算子的優先順序將其分組。一元運算子的優先順序最高,接下來是乘法和除法,優先順序最低的是加法和減法。
上述所有運算子都滿足做左結合律,意味著當優先順序相同時按照從左向右的順序進行組合。
算術運算子能作用於任意算術型別以及任意能轉換為算術型別的型別。
算術運算子的運算物件和求值結果都是右值。
一元運算子作用域乙個指標或者算術值時,返回運算物件值的乙個(提公升後)的副本。
int i =
1024
;int k =
-i;// k = -1024
bool b =
true
;bool b2 =
-b;// b2 = true,布林型別被提公升為 int
運算子%
俗稱「取餘」或「取模」運算子,負責計算兩個整數相除所得的餘數,參與取餘運算的運算物件必須是整數型別。
在除法運算中,如果兩個運算物件的符號相同則商為正,否則商為負。商一律向 0 取整(直接切除小數部分)。
根據取餘運算的定義,如果m
和n
是整數且n
非 0,則表示式(m/n)*n+m%n
的求值結果與m
相等。隱含的意思就是,如果m%n
等於 0,則它的符號和m
相同。除了-m
導致溢位的特殊情況,其他時候(-m)/n
和m/(-n)
都等於-(m/n)
,m%(-n)
等於m%n
,(-m)%n
等於-(m%n)
,具體示例如下:
21 % 6; // 結果是 3 21 / 6; // 結果是 3
21 % 7; // 結果是 0 21 / 7; // 結果是 3
-21 % -8; // 結果是 -5 -21 / -8; // 結果是 2
21 % -5; // 結果是 1 21 / -5; // 結果是 -4
第四章 表示式 4 4 賦值運算子
賦值運算子的左側運算物件必須是乙個可修改的左值。賦值運算的結果是它的左側運算物件,並且是乙個左值。結果的型別就是左側運算物件的型別,如果賦值運算子的左右兩個運算物件型別不同,則右側運算物件將轉換成左側運算物件的型別。賦值運算子滿足右結合律 對於多重賦值語句中的每乙個物件,她的型別或者與右邊物件的型別...
第四章 運算子 表示式和語句
使用運算子來表示算術運算。基本的算術運算子 以及 沒有指數運算子。標準 的數學庫為此提供了乙個pow 函式。例如,pow 3.5,2.2 返回3.5的2.2次冪 號左邊必須是乙個變數的名字。賦值運算子左邊必須指向乙個儲存位置。最簡單的方法是使用變數的名字,但是以後您會看到,指標 也可以用於指向乙個儲...
第四章 表示式 4 9 sizeof 運算子
sizeof運算子返回一條表示式或乙個型別名字所佔的位元組數。sizeof運算子滿足右結合律,其所得的值是乙個size t型別的常量表示式。運算子的運算物件又兩種形式 sizeof type sizeof expr 在第二種形式中,sizeof返回的是表示式結果型別的大小,sizeof並不實際計算其...