線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:951
推到 Plurk!
推到 Facebook!

函式回傳ㄉ問題

答題得分者是:jessechan
Ming Lin
一般會員


發表:27
回覆:53
積分:21
註冊:2003-04-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-05-06 11:42:16 IP:61.222.xxx.xxx 未訂閱
想請問各位~ 有沒有辦法讓函式回傳一個陣列 或讓函式回傳陣列ㄉ位址 我自己是使用extern 感覺此法弱弱~>< 再者~因為我不知如何宣告 請給我一個簡單ㄉSample Code 謝謝
jessechan
版主


發表:109
回覆:394
積分:254
註冊:2002-04-05

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-05-06 12:41:18 IP:203.75.xxx.xxx 未訂閱
我建議使用一個 public 的指標變數, 傳回時以這個變數傳回. ex: int * pI;    int * Test() {   pI = new int(10);   pI[0] = 0;   pI[1] = 1; ...   return (pI); } 其實這裡並不一定要把 pI 傳回來, 只是說明可以傳回一個指標. 使用   Test();   delete []pI; 記得要清除記憶體.        Jesse Chan
------
Jesse Chan
jessechan
版主


發表:109
回覆:394
積分:254
註冊:2002-04-05

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-05-06 12:45:27 IP:203.75.xxx.xxx 未訂閱
另一種作法. //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner)   : TForm(Owner) {   int * pJ;   pJ = Test();   delete []pJ; } //--------------------------------------------------------------------------- int * TForm1::Test() {   int * pI;   pI = new int(10);   return (pI); }    Jesse Chan
------
Jesse Chan
JerryKuo
版主


發表:42
回覆:571
積分:322
註冊:2003-03-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-05-06 13:07:13 IP:61.59.xxx.xxx 未訂閱
Ming Lin你好:    有個方法也可以給你參考: 如果你的陣列在呼叫函數運算前,就已經存在,那可以直接把陣列指標 直接丟進函數運算處理,不用傳回陣列指標也可以達到你需求。    
 
 void main(void)
 {
  int arr[10][10];
  ...
  process(arr);
  ...
 }     void process(int **array)
 {
  
  
 }
系統時間:2024-05-07 15:42:43
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!