運(yùn)算與賦值的等號(hào)前后怎么寫?。?/h1>
5 回答
TA貢獻(xiàn)48條經(jīng)驗(yàn) 獲得超24個(gè)贊
呵呵,很經(jīng)典的問題?
year?%?4?==?0?/*?注釋:?year?對(duì)?4?取余(?求模?)?的結(jié)果是否于?0?相等?*/
//?下面的這種寫法和上面的寫法是等價(jià)的,但是更為推薦,因?yàn)閷?==?誤寫做?=?是很多程序員?(?甚至
//?是有較多編程經(jīng)驗(yàn)的程序員?)?易犯的錯(cuò)誤,這種錯(cuò)誤屬于邏輯錯(cuò)誤,比較隱蔽,不易發(fā)現(xiàn)?
????//?比如當(dāng)你想判斷??age?是否等于?20?歲的時(shí)候,使用我們的最佳實(shí)踐法,寫作
????if?(20?=?year){?//?這里不小心將?==?寫成了?=?,就會(huì)因?yàn)?賦值操作符左邊只能為變量的語法
????//?檢查而導(dǎo)致錯(cuò)誤暴露出來
????????//?do?something
????}
0?==?year?%?4?//?這種寫法被稱為?==?的最佳實(shí)踐
//?而??z?=?a?+?b;?是?"將?a?+?b?的值??賦值給?z?",?=?這里讀作?"賦值",?賦值操作符?(?即?"="?)?
//?左邊只能是單個(gè)變量,不能是表達(dá)式,?注意和數(shù)學(xué)中的?等于符號(hào)區(qū)別,?這里的賦值操作符并沒有交換性TA貢獻(xiàn)1條經(jīng)驗(yàn) 獲得超1個(gè)贊
前者是算數(shù)符號(hào)? 判斷兩邊是否相等
后者是賦值符號(hào)? 規(guī)定把右邊的值賦值給左邊
TA貢獻(xiàn)12條經(jīng)驗(yàn) 獲得超5個(gè)贊
“=”這個(gè)符號(hào)是賦值號(hào),不是數(shù)學(xué)上的等號(hào)。賦值號(hào)的運(yùn)算順序是從右向左,z=a+b的讀法是把a(bǔ)+b的值賦給z。
“==”這個(gè)符號(hào)是等號(hào),它的運(yùn)算順序是從右向左,year%4==0的讀法是year這個(gè)變量取余數(shù)結(jié)果是0,這個(gè)符號(hào)一般用于循環(huán)語句和選擇語句的判定條件,沒賦值號(hào)用的頻繁。
TA貢獻(xiàn)195條經(jīng)驗(yàn) 獲得超115個(gè)贊
C11規(guī)定左值是變量;
z=a+b這里的z是變量,把a(bǔ)+b的值賦值給變量z
year%4==0意思是左值等于0的情況下。
0==year%4,這里右值不為0等式就是錯(cuò)的
- 5 回答
- 0 關(guān)注
- 2917 瀏覽
添加回答
舉報(bào)
