作者joans (宅?)
看板C_and_CPP
標題[問題] 函數傳入值
時間Wed Aug 18 08:51:14 2010
有問題的code: (請善用置底文標色功能)
int cur(int *b)
{
int tmp;
tmp = b[0][0];
return tmp;
}
int main()
{
int b[10][10];
int c;
c = cur(b);
return 0;
}
我想要在 cur 函數中使用main 裡面的二維陣列
不知道要怎麼寫才能夠 順利讀入
明明一維陣列 就可以
程式跑出來的錯誤結果:
In function `int cur(int*)':
invalid types `int[int]' for array subscript
In function `int main()':
cannot convert `int (*)[10]' to `int*' for argument `1' to `int cur(int*)'
[Build Error] [1.o] Error 1
開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux)
Dev-C++
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.250.9.82
→ hilorrk:int cur(int *b) => int cur(int (*b)[10]) 08/18 08:53
→ loveme00835:int cur(int *b) → int cur( int (&b)[10][10] ) 08/18 09:03
→ tinlans:為什麼你會認為一維陣列跟二維陣列有相同的型別? 08/18 09:04
→ hilorrk:T大love大早安:P 08/18 09:09
→ loveme00835:辜摸寧~ 08/18 09:12
推 hilorrk:應該把新手十二誡再加一項 array type相關問題XD 08/18 09:15
→ loveme00835:其實這個只要乖乖照著編譯器說的去作, 就能大概知道 08/18 09:21
→ loveme00835:為什麼了, 很多人都忽略編譯器的抱怨, 他很可憐... 08/18 09:22