我正在尝试将我用 Vim 编辑的文本文件读入一个数组。
文本文件为 30*50,由个位数组成。我一直在疯狂地试图让它工作,但我认为由于换行符我遇到了问题。这是我一直在使用的:
Map::Map(char* filename)
{
grid[30][50] = (0);
string line;
ifstream m_file(filename);
if (m_file.is_open())
{
while(m_file.good())
{
for (int i = 0; i < 30; i++)
{
getline(m_file,line);
for (int k = 0; k < 50; k++)
{
int tnum = atoi(line.c_str());
grid[i][k] = tnum;
}
}
}
m_file.close();
}
};
网格在头文件中定义为 int grid[30][50]。
我用来打印的代码如下:
void display_room(int trid[30][50])
{
for (int i = 0; i < 30; i++)
{
for (int k = 0; k < 50; k++)
{
mvprintw(i,k,"%d",trid[i][k]);
};
};
};
调用 Map sMap = Map("testmap");
我只是想将单个数字捕获到一个数组中,然后重新打印该数组(使用curses)。目前,它读取 testmap 文件,并打印全零,无论 testmap 文件中有什么。