官术网_书友最值得收藏!

2.5 運(yùn)算符和表達(dá)式

C語(yǔ)言中的運(yùn)算符和表達(dá)式數(shù)量之多,在高級(jí)語(yǔ)言中是少見的。正是豐富的運(yùn)算符和表達(dá)式使C語(yǔ)言的功能十分完善,這也是C語(yǔ)言的主要特點(diǎn)之一。

C語(yǔ)言的運(yùn)算符不僅具有不同的優(yōu)先級(jí),而且還有一個(gè)特點(diǎn),就是它的結(jié)合性。在表達(dá)式中,各運(yùn)算量參與運(yùn)算的先后順序不僅要遵守運(yùn)算符優(yōu)先級(jí)別的規(guī)定,還要受運(yùn)算符結(jié)合性的制約,以便確定是自左向右進(jìn)行運(yùn)算還是自右向左進(jìn)行運(yùn)算。這種結(jié)合性是其他高級(jí)語(yǔ)言的運(yùn)算符所沒(méi)有的,因此也增加了C語(yǔ)言的復(fù)雜性。

1.運(yùn)算符的分類

(1)算術(shù)運(yùn)算符

算術(shù)運(yùn)算符用于各類數(shù)值運(yùn)算,包括+、-、*、/、%、++、--。

(2)關(guān)系運(yùn)算符

用于比較運(yùn)算,包括>、<、==、>=、<=、!=。

(3)邏輯運(yùn)算符

用于邏輯運(yùn)算,包括&&、||、!。

(4)位運(yùn)算符

參與運(yùn)算的量,按二進(jìn)制位進(jìn)行運(yùn)算,包括&、|、~、^、<<、>>。

(5)賦值運(yùn)算符

用于賦值運(yùn)算,分為三類:簡(jiǎn)單賦值=、復(fù)合算術(shù)賦值+=、-=、*=、/=、%=和復(fù)合位運(yùn)算賦值&=、|=、^=、>>=、<<=。

(6)條件運(yùn)算符

條件運(yùn)算符(?:)是一個(gè)三目運(yùn)算符,用于條件求值。

(7)逗號(hào)運(yùn)算符

逗號(hào)運(yùn)算符(,)用于把若干表達(dá)式組合成一個(gè)表達(dá)式。

(8)指針運(yùn)算符

指針運(yùn)算符包括取內(nèi)容*和取地址&兩種運(yùn)算符。

(9)求字節(jié)數(shù)運(yùn)算符

該運(yùn)算符(sizeof)用于計(jì)算數(shù)據(jù)類型所占的字節(jié)數(shù)。

(10)強(qiáng)制類型轉(zhuǎn)換運(yùn)算符

該運(yùn)算符用于數(shù)據(jù)類型的強(qiáng)制轉(zhuǎn)換,形式為:(數(shù)據(jù)類型)。

(11)其他運(yùn)算符

其他運(yùn)算符主要包括括號(hào)()、下標(biāo)[]、成員(→,.)等幾種。

2.運(yùn)算符的優(yōu)先級(jí)和結(jié)合性

在C語(yǔ)言中,運(yùn)算符的運(yùn)算優(yōu)先級(jí)共分為15級(jí)。1級(jí)最高,15級(jí)最低。在表達(dá)式中,優(yōu)先級(jí)較高的先于優(yōu)先級(jí)較低的進(jìn)行運(yùn)算。當(dāng)一個(gè)運(yùn)算量?jī)蓚?cè)的運(yùn)算符優(yōu)先級(jí)相同時(shí),則按運(yùn)算符的結(jié)合性所規(guī)定的結(jié)合方向處理。

C語(yǔ)言中各運(yùn)算符的結(jié)合性分為兩種,即左結(jié)合性(自左至右)和右結(jié)合性(自右至左)。例如,算術(shù)運(yùn)算符的結(jié)合性是自左至右,即先左后右,這種自左至右的結(jié)合方向就稱為左結(jié)合性,而自右至左的結(jié)合方向稱為右結(jié)合性。最典型的右結(jié)合性運(yùn)算符是賦值運(yùn)算符。C語(yǔ)言運(yùn)算符中有不少為右結(jié)合性,應(yīng)注意區(qū)別,以避免錯(cuò)誤。

改變運(yùn)算順序的方法是使用圓括號(hào)“( )”。

3.表達(dá)式

表達(dá)式是常量、變量、數(shù)組元素、函數(shù)等運(yùn)算對(duì)象和運(yùn)算符以及括號(hào)的有意義組合。C語(yǔ)言的表達(dá)式既可以單獨(dú)作為語(yǔ)句,也可以在其他語(yǔ)句中作為測(cè)試的條件以及調(diào)用函數(shù)的參數(shù)使用。在一個(gè)表達(dá)式中,運(yùn)算符起著關(guān)鍵的作用。表達(dá)式按其所含運(yùn)算符和運(yùn)算對(duì)象的不同,可分為算術(shù)表達(dá)式、賦值表達(dá)式、逗號(hào)表達(dá)式、關(guān)系表達(dá)式和邏輯表達(dá)式等。本章只介紹前三種表達(dá)式,后兩種將在后面的章節(jié)中介紹。

主站蜘蛛池模板: 从化市| 湖南省| 博客| 祁连县| 宝清县| 山东省| 会东县| 库车县| 北宁市| 扎鲁特旗| 桦南县| 铁力市| 子长县| 驻马店市| 固镇县| 南宫市| 陇川县| 横峰县| 新安县| 高碑店市| 连平县| 舒兰市| 太白县| 闻喜县| 安仁县| 仙桃市| 出国| 光泽县| 长武县| 麻阳| 五大连池市| 永登县| 商南县| 洱源县| 都安| 丹凤县| 大埔县| 荔浦县| 金溪县| 佳木斯市| 祁连县|