精華區beta Programming 關於我們 聯絡資訊
我不認為這會因為 complier 不同而有不同的計算結果. 第一時間看到這題目, 我心算的結果也是 27. x++ 和 ++x 這種差異性應該已經是出到爛的題目, 有點基礎的人都應該具有普遍的認知. ※ 引述《StubbornLin.bbs@ptt.cc (Victor)》之銘言: : 剛才有個人問我一個問題 : int x=12; x=x++ + ++x; cout<<x; : 答案是多少,我跟他說這個行為未定義 : 結果會隨著compiler的實作而改變 : 他說這是 研究所的考題...... : 研究所...............囧rz||| : 我想說...從左邊開始是多少 右邊開始應該是多少 : 應該是25 和 26 吧? : 不過答案卻是27... 後來我寫了一個程式下去跑 : 才知道 因為右邊那個++x做完後並不會傳回複本 : 而是傳回自己本身 所以在遇到左邊x++時會被再加一次 : 這時就變成 13 14 了 : http://myweb.fcu.edu.tw/~d9529769/add.cpp : 這是程式 : 嗯= = : 那不是重點....重點是,我很擔心將來某一天如果我遇到這種腦殘題目 : 該怎麼做答? 那個人說這是問答題 : 我該寫 "行為未定義! 回去重修C/C++吧! 笨蛋!" : 還是... "VC6跑出來的結果是27" : 還是...列舉所有可能的compiler做法 把數值可能的情況全部列舉出來呢? : 寫27麻...其它compiler又不一定是27 : 不寫27...寫一堆廢話的話 說不定還被倒扣分數 XDDDD.... : 老實說我有點懷疑一些人出來教書...到底是在幹麻的阿= =|| : 還是出來誤人子弟的... : 出這種考題的人= =.. 也許也會寫出這樣的程式 : 教授? 助教? : 是不是該判他們去黑龍江勞改呢... : 還是判他們替烤麵包機寫電晶片呢? -- ╭──── Origin:<不良牛牧場> bbs.badcow.com.tw (210.200.247.200)─────╮ Welcome to SimFarm BBS -- From : [59.112.101.83] ◣◣◢ ◢◢不良牛免費撥接→電話:40586000→帳號:zoo→密碼:zoo ◣◣─╯
HZYSoft:這樣的運算結果根本未定義,這也是講到爛 163.29.223.38 02/22 03:32
HZYSoft:有點基礎的人好像也該知道這件事情... 163.29.223.38 02/22 03:33