推 LPH66:我覺得是回傳型態寫錯了...這個回傳型態應該要是 void** 11/01 01:11
→ shemale:同樓上。原po指標觀念仍不夠清楚,試試畫圖 11/01 08:10
→ azureblaze:另外void*可以吃大部分的指標,包括void** 11/01 11:11
在網路上看了幾個資料 回傳型態確實是void*
http://ppt.cc/QL-_ 我後來把後面的所有評論大致瀏覽過後
大概可以理解為啥是void*
其實跟我想得差不多,void*可以是指向任何型態的指標
所以也包括指向指標的指標
至於為啥void**會出現warming,可能是寫compiler的人不希望我們這樣寫吧?
我在猜compiler可能希望function回傳不知道指向甚麼型態的指標的時候
都固定回傳void*,而不是void**或是void***之類的
反正到時候再用cast轉換成(int **)或是(char **)之類的就可以了
我還沒修到compiler就是了...
後來用不同的compiler,return type用void**結果也沒出現warning XD
而且我自己觀察就算有warning程式也可以正確地跑就是了...
雖然不知道會不會哪天爆炸XD
至於把綠色的部分改成void* 應該只是我癡心妄想而已吧XD
有一點把compiler想像成無所不能的東西了
只是抱持著好奇好玩的心情這樣改的
就算可以過我也不敢這樣用XD
※ 編輯: winken2004 來自: 140.113.249.170 (11/01 16:34)
→ Feis:綠色部分是肯定不能這樣做的. a[i] 的型態會是 void 11/01 16:45
→ Feis:何況 void * 是不能做指標的算術運算的 (+, -) 11/01 16:46
→ ah7675:warning 11/01 21:17
阿 感謝XD
※ 編輯: winken2004 來自: 140.113.249.170 (11/01 22:15)