看板 C_and_CPP 關於我們 聯絡資訊
有問題的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