看板 C_and_CPP 關於我們 聯絡資訊
屬於未定義之行為 請看下列連結的文章討論 該算式在不同編譯器下會有不同結果 http://blog.ez2learn.com/2008/09/27/evil-undefined-behavior/ 可能遇到不明其理又愛賣弄的人吧 ※ 引述《roinla (GARFIELD~)》之銘言: : 在面試軟體相關產業時,主管提了一個問題(由於本身c語言太弱,答不出來。) : int a=1; : a++*a++=? : ++a*a++=? : ++a*++a=? : 這三個等式是連續的,第一式與第二式主管跟我說答案是2、20(第三式我忘了問>"<) : 他跟我說回去用程式跑一次就知道,但回去我用dev-c++跑時,答案卻和主管說得不同 : 是分別是1、16、49,不曉得真正的答案是什麼, : 想請教一下版上的高手,感謝大家。 : (ex:第一式數字的結果的程式是用printf('a++*a++=%d',a++*a++)得來的) : 初次發問,如有違犯板規的地方敬請原諒,謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.128.189.208 ※ 編輯: swindler 來自: 220.128.189.208 (02/06 17:00)
zlw:面試好像很愛問這問題,但問題是正常寫成程式通常也不會這樣寫 02/06 17:12
roinla:非常感謝這位大大的解說。 02/06 17:32
comaniac:面試只是考觀念吧~"~ 02/06 17:57
tsaiminghan:我面試也碰到類似的問題, 主管也說是未定義 02/06 22:19
dontblame:推最後一句。遇到這樣的主考官 可反問他是在哪種compile 02/06 22:47
softwind:不知道原po有沒有想過 主管可能是在考溝通能力... 02/06 23:54
firose:會不會主管觀念不清楚, 要您教他? 02/07 00:34
MOONRAKER:其實看主管是哪個年段畢業的,15年前大學也常考這種東西 02/07 00:57
MOONRAKER:(不過現在還考就…) 02/07 00:57
cackle:如果我是主管,可能也會問這個問題,並期待你回答"未定義" 02/07 01:52
lg31cm:實務上根本很少碰到需要這樣寫,這考不出程度 02/07 14:02
lg31cm:還不如考sort, binary search 02/07 14:02
lg31cm:acm上挑幾題簡單的還比較有意義些 02/07 14:03
VictorTom:讓小弟想到以前大學也很愛考i++++, ++++i, ++i++之類的. 02/08 18:22
deepking:現在還是一樣愛考 02/08 19:05
Splash5:在學校釐清觀念教這些ok 但到了業界還問這個就很無力 02/15 02:04