[問題] 函式怎麼回傳二維或三維陣列

看板C_and_CPP (C/C++)作者 (貓頭鷹咕咕)時間12年前 (2014/04/26 14:13), 12年前編輯推噓10(1006)
留言16則, 9人參與, 最新討論串1/3 (看更多)
如題 演算法想要用函式來取得多維矩陣的初始解 可是我發現會卡在一個BUG 爬文也看不懂 開一個矩陣ini[2][2] 以下是我的程式碼 我只希望在main裡面可以呼叫test()然後把矩陣裡面的值給存取出來 #include "stdafx.h" #include "stdlib.h" #include "iostream" using namespace std; void test(int* ini) { ini[0][0]=1; ini[0][1]=2; ini[1][0]=1; ini[1][1]=2; } int _tmain(int argc, _TCHAR* argv[]) { int ini[2][2]={0}; test (&ini[0][0]); cout<<ini[0][0]<<endl<<ini[0][1]; system("pause"); return 0; } 可是執行出現了一句話 "註標必須使用在陣列或指標型別上" 想請問一下各位高手們我這段程式是哪邊錯了 --

09/19 22:30,
雙層純牛肉
09/19 22:30

09/19 22:44,
獨特醬料加生菜
09/19 22:44

09/19 22:50,
起司洋蔥酸黃瓜
09/19 22:50

09/19 22:51,
芝麻麵包蓋上去
09/19 22:51

09/19 22:56,
我就是愛
09/19 22:56

09/19 22:58,
滋帶原者
09/19 22:58
-- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.74.183.124 ※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1398492807.A.B8F.html

04/26 14:29, , 1F
void test(int** ini)
04/26 14:29, 1F

04/26 14:29, , 2F
test (ini);
04/26 14:29, 2F
謝謝so大的修正 不過出現了另外一個BUG error C2664: 'test' : 無法將參數 1 從 'int [2][2]' 轉換成 'int **'

04/26 14:34, , 3F
置底文有寫
04/26 14:34, 3F
我看到了!! 正在讀 所以好像這是無解題 QQ? ※ 編輯: pudding86200 (42.74.183.124), 04/26/2014 14:38:14

04/26 15:28, , 4F
利用index, 一維當二維用?
04/26 15:28, 4F

04/26 16:11, , 5F
void test( int (*ini)[2] ) ; ????
04/26 16:11, 5F

04/26 17:57, , 6F
void test( int ini[][2] ) ; 比較標準的寫法是這樣
04/26 17:57, 6F

04/26 18:01, , 7F
你用了 c++, 要不要考慮用 std::vector
04/26 18:01, 7F

04/26 20:03, , 8F
void test(int (&in)[2][2]); 為什麼不這樣?
04/26 20:03, 8F

04/26 20:39, , 9F
包成struct傳
04/26 20:39, 9F
q大能不能講的詳細一點? 我可以站內信問你嗎QQ ※ 編輯: pudding86200 (140.114.236.148), 04/26/2014 21:34:40

04/26 21:55, , 10F
我個人是習慣包成struct 如果要傳2維以上的
04/26 21:55, 10F

04/26 21:56, , 11F
如果你是用純C的話啦 C++的話就如上vector
04/26 21:56, 11F

04/26 22:16, , 12F
看到 header, 你還是用 C++ vector 吧 , 不要為了這小問
04/26 22:16, 12F

04/26 22:16, , 13F
題卡那麼久,沒必要,你還要接下來的事要做..
04/26 22:16, 13F

04/26 22:25, , 14F
header?? 那不是VS幫你掛上的東西而已嗎
04/26 22:25, 14F

04/26 22:47, , 15F
就算是幫掛的,裡面的東西有掛到 c++ header 啊 @@
04/26 22:47, 15F

04/28 02:15, , 16F
用tuple or vector<vector<T> >
04/28 02:15, 16F
文章代碼(AID): #1JMqw7kF (C_and_CPP)
文章代碼(AID): #1JMqw7kF (C_and_CPP)