最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

左值、右值、復(fù)合賦值

2023-04-23 22:44 作者:glimix  | 我要投稿

賦值右結(jié)合性

對(duì)于運(yùn)算符的右結(jié)合性,我們從初始化與賦值開(kāi)始。

代碼極其簡(jiǎn)單,但有兩個(gè)問(wèn)題需要你回答。

  1. 定義width變量時(shí),它的初始值是多少?

  2. 給width變量賦值后,它的值又是多少?

相信你會(huì)隨口說(shuō)出,width的值分別是6與5(表達(dá)式的結(jié)果),而不是2與3("="右邊的第一個(gè)數(shù)值)。稍加思索,你會(huì)發(fā)現(xiàn)自己先計(jì)算了賦值運(yùn)算符右側(cè)的整個(gè)表達(dá)式,然后將結(jié)果賦予width變量,我們稱這類運(yùn)算符具有右結(jié)合性。

左值與右值

之前我們以盒子的角度講解了變量存儲(chǔ)數(shù)據(jù)的特性,同樣,我們也可以讀取變量的值。與現(xiàn)實(shí)不同,只要變量這個(gè)盒子存在,我們就可以無(wú)限次讀取,之前的值始終存在。

可以看出,一個(gè)變量在不同的語(yǔ)義環(huán)境下其意義不同。

  • 賦值時(shí):變量取盒子的存儲(chǔ)功能這一概念

  • 讀取時(shí):變量取查看盒子中數(shù)據(jù)的概念

從賦值運(yùn)算符的角度講,變量在左側(cè)時(shí)代表著寫入操作,此時(shí)變量是個(gè)左值(lval),左值在程序中有一個(gè)確切的內(nèi)存地址以用于寫數(shù)據(jù);在右側(cè)時(shí)代表著讀取操作,稱為右值(rval)。下面的例子展示了可能的左值與右值表現(xiàn)方式。

顯然,你不能將一個(gè)變量賦值給一個(gè)常數(shù)。但是,同一個(gè)變量卻可以出現(xiàn)在賦值運(yùn)算符的左右兩側(cè),在左邊取盒子存儲(chǔ)的概念,在右邊取讀取盒中數(shù)值的概念。

復(fù)合賦值語(yǔ)句

雖然像 a=a; 這種語(yǔ)法你幾乎不會(huì)用,但讓a自身發(fā)變化是可行的。比如說(shuō)有一個(gè)記錄英雄血量的hp變量,當(dāng)角色獲得能量后hp值增加,我們可以這樣編寫:

對(duì)于這種實(shí)現(xiàn),C語(yǔ)言也提供了一種簡(jiǎn)化的語(yǔ)法,稱為復(fù)合賦值運(yùn)算。

這里,我們使用 += 運(yùn)算符完成了等同的操作,當(dāng)使用這種簡(jiǎn)寫形式時(shí),不論右側(cè)表達(dá)式多復(fù)雜,始終要將它們看作是一個(gè)整體,并與左側(cè)變量運(yùn)算求值。

除了+=,*=簡(jiǎn)寫形式,C語(yǔ)言還提供了-=、/=、%=簡(jiǎn)寫運(yùn)算符,再次對(duì)于/=,%=運(yùn)算進(jìn)行提醒:除數(shù)不能為0。

運(yùn)行結(jié)果

習(xí)題

  1. 編寫程序,讓變量 area 存儲(chǔ)矩形面積。

  2. 使用復(fù)合賦值運(yùn)算符,讓矩形面積縮小一半。

  3. 觀察 Ex2 中的程序,指出變量左右值使用情況。


左值、右值、復(fù)合賦值的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
铜陵市| 翁牛特旗| 南开区| 泗洪县| 平昌县| 五河县| 罗江县| 辛集市| 京山县| 于都县| 内江市| 汝阳县| 页游| 临武县| 淳化县| 佛山市| 云南省| 南澳县| 惠东县| 鄢陵县| 吉安市| 新津县| 通州市| 香港| 远安县| 宜丰县| 隆林| 西华县| 鹤岗市| 独山县| 梓潼县| 万源市| 兴隆县| 谢通门县| 商都县| 景宁| 界首市| 清新县| 海安县| 南江县| 鲁山县|