在我使用 for 循环和数组操作的一个类方法声明中,我遇到了一个特别奇怪的错误。似乎我上一个循环的循环初始化会影响我下一个循环的结果。这是我的代码:
void shape::AssignTopLeftCorner()
{
for (int i=0; i<3; i++); /this for loop affects the results...
int temp[4][2];
temp[0][0]=verticies[0][0];
temp[0][1]=verticies[0][1];
int topLeft;
for(int i=1; i<4; i++)//..of this for loop
{
if(verticies[i][1]>temp[0][i])
{
topLeft=i;
temp[0][0]=verticies[i][0];
temp[0][1]=verticies[i][1];
}
}
}
如果我在最顶层的循环中将 'i<3' 更改为 'i<4' 我会得到不同的结果,即使它什么也没做!此问题仅与计算机有关,但我不知道是什么原因造成的。我已经做过记忆测试。会不会是我的主板?操作系统?有任何想法吗?我正在使用 Dev C++ 4.9.9.2