我有一个循环来填充二维数组,并且我想将由这个总体创建的值传递给一个函数,以便用它进行其他计算。我是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