[討論] 關於判斷式的撰寫風格

看板C_and_CPP作者時間3年前 (2020/09/04 00:07), 3年前編輯推噓2(208)
留言10則, 3人參與, 3年前最新討論串1/1
大家好,打給後,太咖齁~ 小弟這幾天看到一個判斷式的不同形式寫法 原本C語言是長這樣 if(x>5) i=1; else i=0; 前幾天看到有人寫成這樣 i=(x>5); 不知道版上諸位前輩會不會寫成這種形式呢? 如果以組合語言來看,似乎第2種形式會比較快? 先不論現在機器對於編譯都已經做最佳化了,所以可能感覺不出來差別 不過還是想多學習一下不同的寫法,與更好的寫法 謝謝各位 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.176.11.43 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1599149229.A.68B.html

09/04 00:21, 3年前 , 1F
i = x>5? 1: 0;
09/04 00:21, 1F

09/04 00:22, 3年前 , 2F
一般情況下選1吧,可讀性比較重要。且若i的目標值不剛好
09/04 00:22, 2F

09/04 00:22, 3年前 , 3F
是0跟1的話第二種寫法就沒用了
09/04 00:22, 3F
了解,很受用的解釋,感謝指教 ※ 編輯: jacky1989 (180.176.11.43 臺灣), 09/04/2020 00:28:38

09/04 00:43, 3年前 , 4F
只有一個可用於初始化, 所以要看使用情境. 就問你一
09/04 00:43, 4F

09/04 00:43, 3年前 , 5F
個問題: 如果 i 是 const int 應該怎麼寫? 撰碼要看
09/04 00:43, 5F

09/04 00:43, 3年前 , 6F
前後文和設計來選擇適合的寫法, 而不是死背答案
09/04 00:43, 6F

09/04 00:45, 3年前 , 7F
另外還有一個問題是: 在 if-else 以前 i 的值合不合
09/04 00:45, 7F

09/04 00:45, 3年前 , 8F
法? 而在 if-else 之後 i 又有哪些可能值? 這些問題
09/04 00:45, 8F

09/04 00:45, 3年前 , 9F
都會影響你最後呈現的方式
09/04 00:45, 9F

09/10 10:15, 3年前 , 10F
只有當 i 的型態是 bool 我才會這樣寫
09/10 10:15, 10F
文章代碼(AID): #1VKHIjQB (C_and_CPP)