【发布时间】:2016-05-06 20:46:23
【问题描述】:
我有一个循环,它成功地将文本文件的前 9 行读入一个数组并适当地使用它。在每一次额外的传递中,我想跳过文本文件的 9 行并从那里覆盖数组。 (9行每一段的信息类型相同)
问题是我似乎无法让它跳过。我有一个变量,每次通过时递增 9,最多可达 9 个部分,它本身将来自通过测量文本文件的行生成的变量。
我认为最简单的方法是通过我想跳过的行的当前值来增加这个循环中的变量,但这要么什么也没做,要么使程序崩溃,要么使输出混乱,这取决于如何我走近了。
这是当前将信息从文本文件传递到二维数组(并删除空白)的文本区域
for (int x = (0); x < BOARD_SIZE + 1; ++x)
{
for (int y = 0; y < BOARD_SIZE; ++y)
{
// Initializing as Z because that's not a possible input from file.
// If it appears something is wrong.
char point = 'Z';
if (!file.get(point))
cout << "There seems to be a problem with the file." << x << "," << y << endl;
if (isblank(point))
{
// Without this, it will spit out spaces every other character of the array
--y;
}
else
{
chessBoards[x][y] = point;
}
}
}
正如现在所写的那样,该程序可以工作,并生成与文件中的表格数量相等的表格,但每次通过时都会在屏幕上打印第一个表格的精确副本。
【问题讨论】:
标签: c++ arrays file loops multidimensional-array