作者idleryan (QQ)
看板C_and_CPP
標題[問題]初學指標/函數指標的問題
時間Sat Aug 12 18:34:42 2017
開發平台(Platform): (Ex: Win10, Linux, ...)
Win10
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
MinGW
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
NA
問題(Question):
書中學習題要求使用包含函數指標的程式,要求包括Sum()/Func1()/Func2()
其中Func1/Func2分別產生一個二為矩陣{{1,2,3},{4,5,6}}和{{2,4,6},{8,10,12}}
最後使用Sum()呼叫Func1/Func2作為參數求矩陣和
餵入的資料(Input):
預期的正確結果(Expected Output):
正確但是Sum()吃的感覺不是指標函數而是矩陣...是因為我把Func1/2回傳矩陣做檢查
導致type變成二維指標嗎?
錯誤結果(Wrong Output):
程式碼(Code):(請善用置底文網頁, 記得排版)
http://codepad.org/vbZdujDI
補充說明(Supplement):
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.45.200.9
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_and_CPP/M.1502534085.A.95A.html
1F:→ Lipraxde: 你的Func1、Func2就只是普通的int **,不是換個名字就變 08/12 19:22
2F:→ Lipraxde: 函數指標了 08/12 19:22
3F:→ idleryan: Func1/Func2是函數沒錯,是Sum用指標函數呼叫Func1/Func2 08/12 21:00
4F:→ idleryan: 但是因為Func1已經做成回傳矩陣(int **),不知道在Sum中 08/12 21:01
5F:→ idleryan: 要怎麼呼叫....現在看起來是被我直接寫成矩陣嗎? 08/12 21:02
6F:→ Lipraxde: 你應該是寫成矩陣了,函數指標我記得宣告應該是用int ** 08/12 21:17
7F:→ Lipraxde: (*func)(int) 08/12 21:17
8F:→ idleryan: 感謝Lipraxde大,但是這樣在Sum裡面就無法提取Func的矩陣 08/12 23:18
9F:→ idleryan: 做運算了?如果要再另外給一個指標不是喪失當初用指標傳 08/12 23:18
10F:→ idleryan: 進去節省的空間?我現在一直腦袋轉不過來... 08/12 23:19
11F:→ Lipraxde: 你傳函數指標到sum裡,就在裡面算,有點像python的產生 08/13 01:25
12F:→ Lipraxde: 器的感覺 08/13 01:25
13F:→ poiuy777: 沒時間細看 大概看一下 尤其是L30 很明顯觀念有問題 08/17 22:31
14F:→ poiuy777: 我建議你先跳過這題 會了這題並不會有很大實質上的意義 08/17 22:32
15F:→ poiuy777: 這題的出題者有點像是為了考試而考試吧 08/17 22:33