亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

運算與賦值的等號前后怎么寫啊?

運算與賦值的等號前后怎么寫啊?

C
大錘審問 2017-12-07 11:24:47
year%4==0? 為什么不是? 0==year%4z=a+b對吧? a+b=z是錯的那為什么上面是那樣寫啊???
查看完整描述

5 回答

?
JackWho

TA貢獻48條經驗 獲得超24個贊

呵呵,很經典的問題?

year?%?4?==?0?/*?注釋:?year?對?4?取余(?求模?)?的結果是否于?0?相等?*/

//?下面的這種寫法和上面的寫法是等價的,但是更為推薦,因為將?==?誤寫做?=?是很多程序員?(?甚至
//?是有較多編程經驗的程序員?)?易犯的錯誤,這種錯誤屬于邏輯錯誤,比較隱蔽,不易發現?
????//?比如當你想判斷??age?是否等于?20?歲的時候,使用我們的最佳實踐法,寫作
????if?(20?=?year){?//?這里不小心將?==?寫成了?=?,就會因為?賦值操作符左邊只能為變量的語法
????//?檢查而導致錯誤暴露出來
????????//?do?something
????}

0?==?year?%?4?//?這種寫法被稱為?==?的最佳實踐


//?而??z?=?a?+?b;?是?"將?a?+?b?的值??賦值給?z?",?=?這里讀作?"賦值",?賦值操作符?(?即?"="?)?
//?左邊只能是單個變量,不能是表達式,?注意和數學中的?等于符號區別,?這里的賦值操作符并沒有交換性


查看完整回答
3 反對 回復 2017-12-07
?
慕數據8240494

TA貢獻1條經驗 獲得超1個贊

前者是算數符號? 判斷兩邊是否相等

后者是賦值符號? 規定把右邊的值賦值給左邊

查看完整回答
1 反對 回復 2017-12-07
?
qq_狼煙四起_0

TA貢獻12條經驗 獲得超5個贊

“=”這個符號是賦值號,不是數學上的等號。賦值號的運算順序是從右向左,z=a+b的讀法是把a+b的值賦給z。

“==”這個符號是等號,它的運算順序是從右向左,year%4==0的讀法是year這個變量取余數結果是0,這個符號一般用于循環語句和選擇語句的判定條件,沒賦值號用的頻繁。

查看完整回答
1 反對 回復 2017-12-07
?
慕用4063026

TA貢獻195條經驗 獲得超115個贊

C11規定左值是變量;

z=a+b這里的z是變量,把a+b的值賦值給變量z

year%4==0意思是左值等于0的情況下。

0==year%4,這里右值不為0等式就是錯的

查看完整回答
1 反對 回復 2017-12-07
?
__innocence

TA貢獻313條經驗 獲得超208個贊

等號是賦值,兩個等號是判斷是否相等

查看完整回答
1 反對 回復 2017-12-07
  • 5 回答
  • 0 關注
  • 2875 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號