我有一個循環來填充二維數組,並且我想將由這個總體創建的值傳遞給一個函數,以便用它進行其他計算。我是C++的初學者,所以清楚的解釋會有很大的幫助。這裏是我的代碼:將2D數組索引傳遞給函數?
for (int car = 1; car <= 27; car++) {
int test[27][3] = {{car, mpg[car], speed[car]}};
float speed = speed[car];
timeGen(speed);
cout << car << "\t" << mpg[car] << "\t" << speed[car] << endl;
}
這是timeGen
功能:
float timeGen(float x)
{
int distance = 50;
float speed = x;
float time = distance/x;
return time;
}
它好像一切都將正常工作,但發生的事情是,我得到一個錯誤說「下標要求數組或指針類型。」我對他們的意思有點困惑。它是否告訴我創建一個指向該索引的指針,然後調用timeGen
函數中的指針?解釋會很棒!
非常感謝。此外,價值mpg
,speed
,取自我的代碼的其他部分工作正常。關於如何解決我現在遇到的問題的說明會很棒!
無關,但嚴重的錯誤:數組是從零開始的。 – 2013-02-28 06:20:43
如何定義'速度[汽車]'中的'速度'? – perreal 2013-02-28 06:20:53
你應該爲'float''速度'和速度數組使用不同的名稱。實際上,「浮動速度」會隱藏陣列速度。 – Mankarse 2013-02-28 06:23:09