看板 ask 關於我們 聯絡資訊
請問一下學程式設計的大大們 有些程式會寫說 I = A+B 和 I == A+B有甚麼差別?? 重點就是一個 = 和兩個==的差異 在哪? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 175.182.93.24 ※ 文章網址: https://www.ptt.cc/bbs/ask/M.1553765916.A.BC5.html
st3336: 1 I用A+B帶入 2. I與A+B相等(與否) 1是命令 2是判斷邏輯 03/28 17:44
iscu: == 是用來判斷兩邊是否相等 , = 是賦值 03/28 19:03
higger: 我還是覺得if...then...else比較符合人類大腦... 03/28 19:53
st3336: 就算有if 跟有== 是兩回事吧 03/28 20:11
higger: 我還以為你說的"判斷邏輯"是指這個... 03/28 20:28
scarbywind: 布林運算式: 03/28 20:32
higger: 所以程式設計中~等號是由右讀到左~對初學者會很奇怪~但真 03/28 20:35
higger: 要表達相等~就變成要打兩次等號~這樣沒錯了吧? 03/28 20:35
higger: 算了~我愈想愈不通 03/28 20:37
higger: 如果是布林~不是1就是0~那不就跟if then (1)else(0)一樣? 03/28 20:38
scarbywind: 等號跟一般運算的等號不同義.. 03/28 20:51
scarbywind: 程式精簡 03/28 20:52
scarbywind: 不然你也可以打一堆去運算次方之類.. 03/28 20:54
Esvent: = assign == is equal to 03/28 20:54
Esvent: assign的回傳值是賦值執行完成後的左方運算元 (C語言 03/28 21:04
Esvent: is equal to是兩個運算元是否相等的布林值 03/28 21:05
ctrlbreak: 還有三個的 === 有沒有崩潰XD 03/29 06:08
APM99: I等於A+B vs I是不是等於A+B 03/29 11:26
yzfr6: = 賦值給變數,或運算處理結果丟給變數 03/29 13:03
yzfr6: == 等號兩邊的運算處理結果是否相等 03/29 13:06
DT990: === 記得是除了值相同外,資料型態也要相同(不會轉換比較) 03/29 18:41
DT990: 像某些程式語言的 True 會轉成 1,False 會轉成 0 03/29 18:42
DT990: 三個等號就不會做這種轉換直接比 03/29 18:42