[問題] ++問題

看板C_and_CPP作者 (心的方向)時間12年前 (2011/12/28 23:47), 編輯推噓3(3011)
留言14則, 10人參與, 最新討論串2/2 (看更多)
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) C++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 判斷式的++ 餵入的資料(Input): 預期的正確結果(Expected Output): 11 16 2 4 錯誤結果(Wrong Output): 11 15 1 4 程式碼(Code):(請善用置底文網頁, 記得排版) int a=10,b=15,c=1,d=3; d+=((a++)||(++b)&&(c++)); printf("%d %d %d %d",a,b,c,d); 補充說明(Supplement): 是遇到&&時就不會++了?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.37.161.125

12/28 23:49, , 1F
我只想說我絕對不會把程式碼寫成這個樣子
12/28 23:49, 1F

12/28 23:50, , 2F
這種程式碼我也不會想花時間去研究
12/28 23:50, 2F

12/28 23:50, , 3F
這不是++的問題, 這是 && 與 || short circuit的問題...
12/28 23:50, 3F

12/28 23:52, , 4F
Google: Short-circuit evaluation; 另外同意j大說的XD
12/28 23:52, 4F

12/28 23:58, , 5F
&& 前面是false 他就不會去做後面的了
12/28 23:58, 5F

12/29 02:20, , 6F
腦筋急轉彎
12/29 02:20, 6F

12/29 02:21, , 7F
a++ 不等於0 所以成立 後面就不會去做了
12/29 02:21, 7F

12/29 02:30, , 8F
我連&&跟||誰要先做都不知道了(掩面
12/29 02:30, 8F

12/29 02:32, , 9F
不知道就用巢狀 if 包起來吧...基本上沒有用具名變數
12/29 02:32, 9F

12/29 02:32, , 10F
代掉根本是要刁看 code 的人啊
12/29 02:32, 10F

12/29 11:59, , 11F
這樣的程式風格太難閱讀與維護
12/29 11:59, 11F

12/30 00:07, , 12F
short circuit 正解!
12/30 00:07, 12F

12/30 00:21, , 13F
謝謝上面各位大大的回答!!!
12/30 00:21, 13F

12/30 19:25, , 14F
只有出題老師才會這樣寫吧
12/30 19:25, 14F
文章代碼(AID): #1E-peHzU (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1E-peHzU (C_and_CPP)