[問題] if判斷裡面放算式 出來答案不一樣?

看板C_and_CPP作者 (Charlott.HonG)時間7年前 (2016/11/03 21:29), 7年前編輯推噓7(7012)
留言19則, 10人參與, 最新討論串1/1
程式碼:https://goo.gl/Rzowkh 為什麼出來的 black[0] 與 black[1] 是不一樣的QQ 我想超久到底踩了什麼坑= = #define Ratio 5.5 if (float temp = ((float)Ratio-(int)Ratio) > 0){ // cout << "b=" << temp << endl; black[1] = 1.0 / temp; } 這裡的的temp出來的結果是 1 是主因 為什麼QQ 另外~(float)-(int) 這種做法是否是不可預設的危險結果 (很常見到)我一直在想是不是合法的作法 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.173.155.186 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1478179760.A.7A0.html

11/03 21:38, , 1F
邏輯指派至變數,只有0,非0。看編譯器。建議拆二行寫。
11/03 21:38, 1F
好~~

11/03 21:40, , 2F
operator precedence >先讀,再讀=
11/03 21:40, 2F
原來如此!!!!那個1是布林QuQ

11/03 21:54, , 3F
好厲害的寫法,這樣寫去公司會不會被電啊
11/03 21:54, 3F
好說好說((摀臉

11/03 22:37, , 4F
公司喔... 比照上面的 a=a++ 辦理,你明天不用來上班了
11/03 22:37, 4F
嗚嗚我知道錯惹~

11/03 22:38, , 5F
括號不用錢,多加一打不會錯
11/03 22:38, 5F

11/03 23:09, , 6F
未測試會覺得編譯器出錯,多了型態。
11/03 23:09, 6F
我用的版本是 gcc version 5.3.0 g++ -Wall -std=c++0x 沒出現警告與錯誤~

11/04 00:19, , 7F
括號不用錢+1
11/04 00:19, 7F
我會好好用的QQ > ------------------------------------------------------- 感謝各位的協助~~ ※ 編輯: hunandy14 (218.173.155.186), 11/04/2016 01:06:58

11/04 12:14, , 8F
多型態是可編譯的 if (int err=foo()) 的寫法很常見
11/04 12:14, 8F

11/04 12:44, , 9F
好的程式碼是一目了然~
11/04 12:44, 9F

11/05 08:48, , 10F
踩了白目的坑 為甚麼一堆人喜歡把程式碼寫亂
11/05 08:48, 10F

11/05 08:49, , 11F
好好寫似乎很難
11/05 08:49, 11F

11/05 08:51, , 12F
分行寫除錯器好設中斷點 寫成一行真的很白目
11/05 08:51, 12F

11/05 10:33, , 13F
應該立版規 問之前都要試過拆行xD
11/05 10:33, 13F
等等這個我要喊冤~~~ 我知道拆行沒問題,確實原本的我是寫了 A, B, C 三個例子 C 就是分行打~我知道應該要分行打一目了然~~ 只是後來覺得C好像不太重要就拿掉了,盡可能節省各位的時間 我只是不懂我到底採了什麼坑,怎麼形容呢 就是一個坑在那裏,我知道怎麼躲可是我就是想知道 為什麼他是個坑,不知道這樣有沒有說清楚了QuQ 阿...這好像也可以用白目、刻意去採坑形容XDD

11/05 11:41, , 14F
to Ommm5566 舉例 有些小公司的老闆會要求寫出客戶
11/05 11:41, 14F

11/05 11:41, , 15F
無法自行維護的程式碼
11/05 11:41, 15F
了解~~ ※ 編輯: hunandy14 (218.173.155.186), 11/05/2016 15:04:55

11/06 19:12, , 16F
只要uglify再拉掉註解就好了 天下有多少人可以
11/06 19:12, 16F

11/06 19:13, , 17F
處理沒註解又是變數bc的程式碼
11/06 19:13, 17F

11/06 19:13, , 18F
做得到的人 刻意寫也是會被看穿
11/06 19:13, 18F

11/09 02:10, , 19F
>的優先序 比 = 高
11/09 02:10, 19F
文章代碼(AID): #1O6pkmUW (C_and_CPP)