这段代码有些问题。基本上,“ k”的增量不超过1。我已经尝试过在循环外声明它,但没有解决它。基本上,代码所做的是生成晶体网格。 这是一项整体评估,目前我是具有控制台功能的新手,尤其是管理光标。如您所见,在每次迭代中,我将pos.x添加+2。似乎可以正常工作,但是当它再次启动时,pos.x返回到起始值,而pos.y改为递增(?)。
void gridGeneration(Crystal simbols[][Columns])
{
COORD pos = {10, 55};
for (int i = 0; i < Rows; i++)
for (int k = 0; k < Columns; k++)
{
WriteCrystalAt(simbols[i][k].crystal, pos.X, pos.Y, simbols[i][k].color= rand() % light_yellow + light_blue);
pos.X += 2;
if (k = 1)
{
pos.X = 10;
pos.Y += 2;
}
}
}
答案 0 :(得分:4)
将增加到大于1,但您仍将其再次设置为1:
if (k = 1)
您应该使用==
进行比较。
您的编译器应已对此发出警告。如果没有,请查看您的警告设置。如果确实如此,请停止忽略警告。