看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: Win10, Linux, ...) Linux 編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出) GCC 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 如附件程式碼 第7~17行, 在if判斷式裡做賦值 x=n, 會以 if(n) 來做判斷 第21~77行,在if判斷式裡做賦值 x=n, 再加上 || 或 && 做判斷, 為什麼結果cout出來看 x的值只會有1或0呢? 餵入的資料(Input): 預期的正確結果(Expected Output): 錯誤結果(Wrong Output): 程式碼(Code):(請善用置底文網頁, 記得排版,禁止使用圖檔) https://ideone.com/3QRPca 補充說明(Supplement): -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.34.226.230 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1668335366.A.14D.html ※ 編輯: Hyozero (114.34.226.230 臺灣), 11/13/2022 18:29:58
cuteSquirrel: https://i.imgur.com/fM1B9ue.png 11/13 18:38
cuteSquirrel: 中文書或電子資源查詢: C++運算子優先權 11/13 18:39
cuteSquirrel: 英文查 C++ Operator Precedence 11/13 18:39
bhbbbbb: 幫1F補充一下,就是以你的 22 行來說,實際上是 if (x = 11/14 13:49
bhbbbbb: (3 || x == 2)) 11/14 13:49
Hyozero: 感謝大大們解說 ^^ 11/14 22:28
wulouise: 如果你要用inline variable 就用if(int x = n; x||a&&b) 11/14 23:29
wulouise: C++17以上可用,可讀性比較好 出錯機率低一點..Y 11/14 23:30
peter98: 括號請刮好刮滿y 11/25 23:18