Re: [閒聊] 十年前CIH怪物團隊的面試題目...

看板Soft_Job (軟體人)作者 (「雄辯是銀,沉默是金」)時間12年前 (2013/06/06 18:13), 編輯推噓8(809)
留言17則, 9人參與, 最新討論串2/4 (看更多)
※ 引述《HowLeeHi (處處留心皆正妹)》之銘言: : 新血來潮去找了一下十年前看過的CIH在大同徵人的面試題目 : 十年後來看,居然只會個2題...0rz : 覺得這些問題的知識在現今找相關工作應該還滿受用的吧. : 引言開始 int (*(*z(int (*(*f)(char))(int)))(char))(int) { } 雖然我應該會用 typedef 來處理這麼複雜的宣告, 但還是想把這個看懂: 先簡化這個 function 把 parameter 拿掉 int (*(*z())(char))(int) parameter: int (*(*f)(char))(int) 這應該簡單不少, 所以參數是 一個 function pointer, 傳入參數 type 是 char, 傳回值 type 是 一個 function pointer, 傳入參數 type 是 int, 傳回值 type 是 int 再來看 function z 本身: int (*(*z())(char))(int) function z 傳回值 type: 一個 function pointer, 傳入參數 type 是 char, 傳回值 type 是 一個 function pointer, 傳入參數 type 是 int, 傳回值 type 是 int 再麻煩大家看看有沒有寫錯的部份。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.125.239.46

06/06 19:35, , 1F
這種複雜的東西,好處不多,一出問題會很難debug
06/06 19:35, 1F

06/06 19:35, , 2F
純粹只是拿來作為考試用的,實作上真的不建議
06/06 19:35, 2F

06/06 20:09, , 3F
請問實作上什麼樣情況才會寫成這樣?
06/06 20:09, 3F

06/06 20:21, , 4F
實作上會用typedef的方式預先定義,不過這麼複雜的case很少
06/06 20:21, 4F

06/06 20:31, , 5F
現在我是不知道怎樣,過去OOP(C++)剛出來時,有段時間,
06/06 20:31, 5F

06/06 20:33, , 6F
virtual method在struct(class)是function pointer
06/06 20:33, 6F

06/06 20:34, , 7F
所以繼承這個virtual class的,不會呼叫錯function
06/06 20:34, 7F

06/06 20:35, , 8F
一層就足夠了,像這個用了兩個兩層,不是沒用,但很少會用
06/06 20:35, 8F

06/06 20:36, , 9F
大家常用的qsort參數是一層,會有什麼情況用到兩層?
06/06 20:36, 9F

06/06 22:17, , 10F
應該說,這樣的寫法是在寫語法而不是實用了...XD"
06/06 22:17, 10F

06/06 22:18, , 11F
寫程式已經不再是從低層coding起的年代了...
06/06 22:18, 11F

06/06 23:46, , 12F
他不不是號稱可以刻出os?會這樣問就不易外
06/06 23:46, 12F

06/07 11:52, , 13F
06/07 11:52, 13F

06/07 15:01, , 14F
推樓上,這種題目跟學校老師考一堆星號一樣沒意義
06/07 15:01, 14F

06/07 16:20, , 15F
我本來要推 appleway 的那個,但我發現他會 syntax error
06/07 16:20, 15F

06/08 14:13, , 16F
會error 是因為那個不是定義,而是呼叫。
06/08 14:13, 16F

06/09 09:51, , 17F
可以拿來考試 實際上這樣寫 我覺得是無聊&無用 閱讀性0
06/09 09:51, 17F
文章代碼(AID): #1Hi63KPp (Soft_Job)
文章代碼(AID): #1Hi63KPp (Soft_Job)