我知道這很簡單,但我似乎無法完成這項工作。傳遞2d數組在C中運行?
我的功能,像這樣:
int GefMain(int array[][5])
{
//do stuff
return 1;
}
在我的主:
int GefMain(int array[][5]);
int main(void)
{
int array[1800][5];
GefMain(array);
return 0;
}
我提到this有用的資源,但我仍然得到錯誤"warning: passing argument 1 of GefMain from incompatible pointer type."
我在做什麼錯?
編輯:
該代碼是由兩個文件,由編譯器鏈接在一起。我沒有使用gcc。上面的代碼正是我所擁有的,除了函數在main中聲明爲「extern int」。謝謝大家的時間。
適用於使用gcc的我。您確定數組聲明和GefMain參數的列數是5嗎? – user85509 2010-06-02 16:25:49
您發佈的代碼將編譯時沒有任何錯誤或警告。您必須張貼虛假代碼。請發佈真實的。 – AnT 2010-06-02 16:34:45
ahh ok你沒有使用gcc ...即使使用'-std = c99 -pedantic'選項,gcc也不會發出警告(沒有-std = c99抱怨//風格評論)...知道編譯器可以幫助誰擁有你的編譯器來幫助你! – ShinTakezou 2010-06-02 17:13:49