看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: Win10, Linux, ...) Win10 編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出) VC++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) iostream 問題(Question): if中==與=的差別 餵入的資料(Input): { 4,4,5,5,6,6,6,7,7,7,8,8 } 預期的正確結果(Expected Output): 7 錯誤結果(Wrong Output): 11 程式碼(Code):(請善用置底文網頁, 記得排版,禁止使用圖檔) 正確的:https://glot.io/snippets/fo6kxy21bw 錯誤的:https://glot.io/snippets/fo75qt5ijj 還請賜教,我還真的不知道為何會有這兩種寫法(汗 補充說明(Supplement): -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.235.252.75 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1591667097.A.B05.html
nickchen1202: 簡單來說 ==是比較 =是賦值 06/09 10:01
mmmmei: ==是真的比較左右一不一樣 =是將右邊賦值予左邊 放在if裡 06/09 10:12
mmmmei: 只要右邊不是=0 就都會成立 06/09 10:12
我懂了,大感謝 也就是說會變成if(0)或if(4)之類的東西對吧 ※ 編輯: HwangTW (111.235.252.75 臺灣), 06/09/2020 10:15:41
qscgy4: 這種問題都可以問…google都有資料吧 06/09 20:48
qscgy4: 那我是不是也可以發一篇 ~和!有什麼不一樣? 都是not 06/09 20:50
jacky1989: 樓上,不必這樣,每個人一開始都是從新手村開始,重點 06/09 21:58
jacky1989: 是有沒有進步,每個人都有不會的地方 06/09 21:58
newking761: 新手連這個都不google...那才是大問題吧,未看先猜con 06/10 00:03
newking761: st再問一篇 06/10 00:03
Gway: 這是書本基礎歐 請多認真學習書本知識 你的loop 應該由0開始 06/10 03:28
Gway: 也是基礎.... 加油 06/10 03:28
dces4212: 怕寫錯可以把constant放左邊 編譯時就會告訴你有沒寫錯 06/10 05:05
nh60211as: loop從0開始就讀到data[-1]了 06/10 08:23
Gway: sorry 我只是想提醒但idx由0開始 06/10 09:12
Gway: 一般不太寫由1開始 後面又是小於等於N-1 好嗎? 06/10 09:12
kingofsdtw: priavete : operater == 06/10 10:15
kingofsdtw: 我開始知道為何要鎖住了 06/10 10:16
loveme00835: 這兩者的差別在於 overload 的形式, 看到 operator=( 06/10 10:43
loveme00835: ) on primitive type 你完全可以確定被呼叫的實體是 06/10 10:43
loveme00835: 哪個, 但是 operator==() 你就要同時考慮兩個運算元, 06/10 10:43
loveme00835: 要判斷被呼叫的實體是哪個就需要更多資訊才行 06/10 10:43
stupid0319: 推,長知識了 06/10 12:30
NCKUchemRx: 推推好問題,魔鬼藏在細節裡 06/12 10:00