作者muah (想唱歌)
看板C_and_CPP
標題[問題] 請問回傳二維陣列的方式
時間Thu Jun 18 03:47:50 2009
我想在執行完function時回傳一個存放數字的一維陣列
比如:
??? sub(char)
int main()
{
char a;
int result[13];
??? = sub(a); //要用result[13]來接回傳值
}
??? sub(char a)
{
int result[13];
return ???
}
請問一下我要怎麼宣告函數跟副程式(???)
還有要怎麼return呢?
麻煩幫我解答一下~~謝謝!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.124.44.61
1F:推 zlw:用int *當return的資料型態,但是你在sub裡的result是產生在 06/18 04:23
2F:→ zlw:堆疊的變數,結論就是,result是放在一個只能暫時存放的地方 06/18 04:23
4F:→ adrianshum:這種情況, 不要回傳, 傳個 int* 進去比較好吧 06/18 12:16
5F:→ muah:因為我是sub處理完後main要對結果繼續處理 所以必須回傳哩 06/18 16:59
6F:推 VictorTom:a大應該是說, main自己傳一個array的頭進來寫結果....:) 06/18 17:10
7F:推 sunkill:因為傳 array or pointer 到 fun 當 arg 是 by address 06/18 17:34
8F:→ sunkill:fun 內改了 main 那邊也改了 那你就能接著處理 06/18 17:35
9F:→ muah:感謝樓上大大解說 我了解了 來試試看 06/18 17:43
10F:→ muah:自己想到一個方法就是把共同變數設成全域變數 這樣就可以同時 06/18 20:03
11F:→ muah:用了 不過可能使用的順序要自己注意 免得不小心被改掉了 06/18 20:04