作者potter1529 (宋代才女唱元曲)
看板C_and_CPP
標題[問題] 陣列input進函式的基本問題
時間Thu Jul 21 21:52:45 2011
放暑假, 書都丟在學校沒辦法查找, 之前也沒有學好....
只好厚顏上版來請教大大們基礎的問題, 懇請教學!
請問
我想將一個陣列的值輸入一個函式計算, 請問要如何辦到呢?
以下是我隨意打出來的函式
void gmail(int *abc[10][20])
{
for(int x;x<10;x++)
{
for(int y;y<20;y++)
{
abc[x][y]=0; // (a)
}
}
}
int main()
{
int bcd[10][20]={0};
gmail(bcd[][]); // (b)
}
這個程式碼功能基本上只是把bcd裡頭的0改為1這樣而已
在compile的時候註解(a)的地方常常都會不給通過,
遇到 「cannot convert 'int' to 'int * (*)[20]'」 的錯誤
請問語法上我要怎麼樣宣告才會正確呢?
另外註解(b)的地方
請問我要在bcd的[][]中填入什麼,
才能不在主函式中使用迴圈就把bcd的值依序input進函式中呢?
如果問題有說不清楚的, 請跟我說, 事實上這個問題之前也曾困惑過我
只是我避免使用input陣列進函式的方式, 於是一直沒有解惑
謝謝大家!
--
推 gnidnic:想做尹志平kobe小龍女03/11 02:01
推 Pietro:張無忌根本沒有主見,無法做出選擇03/11 02:01
推 takuminauki:我有段譽的臉孔蕭峰的身高郭靖的品格陳家落的瀟灑03/11 02:01
→ ATSEVEN:被閹掉的尹志平03/11 02:02
→ dreamcatcher:4樓要當仙根 ?03/11 02:02
→ Pietro:我有段譽的天然蕭峰的命運郭靖的智商陳家落的無能03/11 02:02
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 112.104.163.180
※ 編輯: potter1529 來自: 112.104.163.180 (07/21 21:53)
推 stonehomelaa:搞清楚 (*ptr)[10] 跟 *ptr[10] 的差別吧..... 07/21 21:55
→ james732:可以看看置底13戒的第12條,以及 #1E9iw7xl 這篇的討論 07/21 21:56
→ potter1529:1樓, 請問這兩者的差別在哪裡呢? 07/21 22:13
→ potter1529:謝謝2樓, 有點看得霧煞煞, 我再看久一點試試.. 07/21 22:14
→ potter1529:請問(abc[][2]) 跟(int (*abc)[20] )意義分別是什麼呢? 07/21 22:26
推 horngsh:(ptr*)[x]; 是一個指標, 指向一個二維陣列的起始元素 07/22 10:43