5、操作符和表示式
操作符優先順序
操作符
描述
用法示例
結果型別
結合型
是否控制求值順序
()
聚組(表示式)
與表示式同
n/a否
()
函式呼叫
rexp(rexp,...)
rexp
l-r否
【】
下標引用
rexp【rexp】
lexp
l-r否
.
訪問結構體成員
lexp.member_name
lexp
l-r否
->
訪問結構體指標成員
rexp->member_name
lexp
l-r否
++
字尾自增
lexp++
rexp
l-r否
--
字尾自減
lexp--
rexp
l-r否
!
邏輯反!rexp
rexp
r-l否
~
按位取反
~rexp
rexp
r-l否
+
單目,表示正值
+rexp
rexp
r-l否
-
單目,表示負值
-rexp
rexp
r-l否
++
字首自增
++lexp
rexp
r-l否
--
字首自減
--lexp
rexp
r-l否
*
間接訪問
*rexp
lexp
r-l否
&
取位址&lexp
rexp
r-l否
sizeof
取其長度,以位元組表示
sizeof rexp sizeof (型別)
rexp
r-l否
(型別)
型別轉換
(型別)rexp
rexp
r-l否
*
乘法rexp*rexp
rexp
l-r否
/
除法rexp/rexp
rexp
l-r否
%
整數取餘
rexp%rexp
rexp
l-r否
+
加法rexp+rexp
rexp
l-r否
-
減法rexp-rexp
rexp
l-r否
<<
左移位rexp<
rexp
l-r否
>>
右移位rexp>>rexp
rexp
l-r否
>
大於rexp>rexp
rexp
l-r否
>=
大於等於
rexp>=rexp
rexp
l-r否
<
小於rexp
rexp
l-r否
<=
小於等於
rexp<=rexp
rexp
l-r否
==
等於rexp==rexp
rexp
l-r否
!=
不等於rexp!=rexp
rexp
l-r否
&
位與rexp&rexp
rexp
l-r否
^
位異或rexp^rexp
rexp
l-r否
|
位或rexp|rexp
rexp
l-r否
&&
邏輯與rexp&&rexp
rexp
l-r是
||
邏輯或rexp||rexp
rexp
l-r是
?:
條件操作符
rexp?rexp:rexp
rexp
n/a是
=
賦值lexp=rexp
rexp
r-l否
+=
以…….加
lexp+=rexp
rexp
r-l否
-=
以…….減
lexp-=rexp
rexp
r-l否
*=
以…….乘
lexp*=rexp
rexp
r-l否
/=
以…….除
lexp/=rexp
rexp
r-l否
%=
以…….取模
lexp%=rexp
rexp
r-l否
<<=
以…….左移
lexp<<=rexp
rexp
r-l否
>>=
以…….右移
lexp>>=rexp
rexp
r-l否
&=
以…….與
lexp&=rexp
rexp
r-l否
^=
以…….異或
lexp^=rexp
rexp
r-l否
| =
以…….或
lexp | =rexp
rexp
r-l否
,
逗號rexp,rexp
rexp
l-r是
lexp表示左值表示式,rexp表示右值表示式。
記住:左值意味著乙個位置,而右值意味著乙個值。所以,在使用右值的地方也可以使用左值,但在需要左值的地方不能使用右值。
C和指標之IO總結
io操作就是簡單的從程式移進或移出位元組的事情,這種位元組流便稱為流 1 文字流 文字流是指在流中流動的資料是以字元形式出現 2 二進位製流 二進位製流是指流動的是二進位制數字序列,若流只有字元,則用乙個位元組的二進位制ascii碼表示,若是數字,則用對應的二進位制數表示。在流入流出時,對 n符號不...
《c和指標》之總結 四
6 指標 計算機記憶體中的每個位置都由乙個位址標識。通常,鄰近的記憶體位置合成一組,這樣就允許儲存更大範圍的值。指標就是它的值表示記憶體位址變數。無論是程式設計師還是計算機都無法通過值的位模式來判斷它的型別。型別是通過值的使用方法隱式地確定的。編譯器能夠保證值的宣告和值的使用之間的關係是適當的,從而...
《c和指標》之總結 二
3 資料 具有external鏈結屬性的實體在其他語言的術語裡稱為全域性 global 實體,所有原始檔中的所有函式均可以訪問他。只要變數並非宣告於 塊或函式定義內部,它在預設情況下的鏈結屬性即為external。如果乙個變數宣告於 塊內部,在它前面新增extern關鍵字將使它所引用的是全域性變數而...