精華區beta Programming 關於我們 聯絡資訊
※ 引述《ast.bbs@pitch.twbbs.org (.....)》之銘言: > ※ 引述《visor.bbs@bbs.yzu.edu.tw (再混,就當掉 ~)》之銘言: > > *n = --*n + --*n + --*n; > > 要看成 > > *n = (--*n + --*n) + --*n; > > tmp = --*n + --*n; > > *n = tmp + --*n; > > 再來 > > --*n; > > --*n; > > tmp = *n + *n; > > --*n; > > *n = tmp + *n; > > > 天啊~這實在是太複雜了~~~~~遇到這種考題 > 應該要放棄了~~~@@" > 引言 > 太 > 多 其實你問的問題已經牽涉到各家 compiler 如何實作的問題了..... 類似之前那段 int i; int *n=&i; *n = 12; *n = --*n + --*n + --*n; cout<<*n<<endl; 我用不同的開發工具所附的編譯器來編譯,執行的結果也不見得一樣 g++ :29 VC6 :29 VC.NET :27 BCB6 :30 至於到底為什麼 前面也有人提到,直接去看看翻譯出來的組語最清楚了.. -- , 秘密情人 (bbs.cse.ttu.edu.tw) ~\ Post From: 61-70-137-117.adsl.static.giga.net.tw Modify: 2005/01/04 Tue 21:19:07