Re: [閒聊] 又一個活生生的例子

看板Programming作者時間18年前 (2007/05/06 21:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串6/8 (看更多)
※ 引述《johnny198681.bbs@ptt.cc (傑喬)》之銘言: > 請問一下.... > ++a,a++不一定等於a+1.... > 是不是因為要看使用時機還是是要看環境.... 關鍵字:side effect, sequence point 用這個去課本或網路上查一查應該就會知道了。 > 又還是2者都有關西??.... > 如果拿來PRINT ++a是先加在讀值,對嗎?.... > 而a++是先讀值再加,對嗎?.... 對,但是跟本主題關聯不大。 > : 執行結果: > : .. 考慮: i的初值為3, > : 表達式(i++*++i+i--*--i)=? > 運算為3*5+5*3=30.... > 結果為30對嗎?.... > 可是為啥我編譯完答案是25.... 沒有一個數字會是正確結果, 標準沒有指定同一個編譯器這樣寫會有什麼固定的行為, 也沒定義所有編譯器都應該要有怎樣的行為。 > 可是那要怎麼測試學生是否有觀念呢?.... > 要不必出這麼刁的題目還是說有更好的辦法?.... 這是教育者的工作 (你是初學者更不用煩惱它), 其實我們可以不去管它怎樣設計比較好, 但是亂七八糟惡搞的題目還是可以批, 當然最好是在已經確定出題者自己也搞不清楚的前提下。 > 對不起小的初學C,請問解決問題的時候會需要用到什麼阿?.... 實務上用到一些「概念工具」, 就是大家常說的「資料結構」和「演算法」裡的東西。 不過更基礎的還是「邏輯性思考」, 一般來說基礎程式設計的課程應該順便訓練這個; 最基礎則是「積木」, 也就是語言本身的各種 facilities, 就像拿積木給小孩子堆, 給點小示範 (甚至是根本不示範) 就讓他們自由發揮一樣, 學習上最好也是這樣, 不能光是靠模仿; 在知道怎樣做比較好之前, 先要學習如何只靠自己的想法來達成目的。 > 請問一下什麼是胃定義的寫法阿@@?我的問題真多@@... 標準規格書上明確記載著行為或結果未定義的事情, 簡稱為「未定義」, 絕對不是「標準規格書沒寫」的意思, 有些人會搞不清楚, 所以這部分特別跟你講一下。 > 最後一問在回到最前面的問題.... > 要怎麼才知到老師出的題目是不是鳥題目?.... > 好題目的樣子應該市長什麼樣的阿?.... 題目的「好」或許不容易判別, 而且會因每人想法背景不同而有不同評價, 但是「超爛的題目」對於熟悉該語言的人而言, 其實非常容易識別出來, 而且不會有什麼爭議, 這類題目通常是「出題者想刁學生反而顯露出自己的無知」等等的形式, 因為你是初學者, 所以我沒辦法用很技術面的說法來回答, 上面那個引號括起來的部分是我所能想到最白話的回答了, 針對現在這個討論串的內容而言。 -- Name: Tseng, Ling-hua E-mail Address: uranus@it.muds.net School: National Tsing Hua University Department: Computer Science Interesting: C++, Compiler, PL/PD, OS, VM, Large-scale software design Researching: Software pipelining for VLIW architectures Homepage: https://it.muds.net/~uranus -- ╔═══╗ ┼────────────────────────╮ 狂狷 Origin:[ 狂 狷 年 少 ] whshs.cs.nccu.edu.tw ╰─╮ 年少 ┼╮ < IP:140.119.164.252 > ╰─╮ ╚╦═╦╝ From:61-230-220-92.dynamic.hinet.net ─╨─╨─ KGBBS 遨翔"BBS"的狂狷不馴;屬於年少的輕狂色彩
文章代碼(AID): #16FabI00 (Programming)
討論串 (同標題文章)
文章代碼(AID): #16FabI00 (Programming)