如何将文本文件(迷宫)中的字符加载到数据结构中以便稍后操作?
How to load characters from a text file (maze) into a data structure to operate on later?
我有一个包含迷宫详细信息的文本文件。首先,我想获取文本文件并将其加载到某种数据结构中。我首先想到我会使用 2d 数组,因为它很好地代表了 2d 迷宫,但是由于提供了额外的功能,我更倾向于向量。我想将它加载到数据结构中的原因是我可以稍后使用某种寻路算法来解决迷宫问题。这是一个迷宫的例子:
xxxxxxx
xA...Bx
xxxxxxx
但是,在将字符正确加载到数据结构中时,我发现这个挑战相当困难。我不一定要寻找非黑即白的答案,只是寻找一些正确方向的指示,这样我就可以自己学习和完成挑战。这几天我一直在尝试这个,但没有取得太大进展(感觉像个白痴),非常感谢帮助。
您可以逐行阅读文件:
for (std::string line, std::getline(file_stream, line);)
{
vector.push_back(line);
}
如果你想遍历每个字符,你可以使用 for-range-loop
(C++11):
for (const auto& line : vector)
{
for (const auto one_char : line)
{
}
}
我有一个包含迷宫详细信息的文本文件。首先,我想获取文本文件并将其加载到某种数据结构中。我首先想到我会使用 2d 数组,因为它很好地代表了 2d 迷宫,但是由于提供了额外的功能,我更倾向于向量。我想将它加载到数据结构中的原因是我可以稍后使用某种寻路算法来解决迷宫问题。这是一个迷宫的例子:
xxxxxxx
xA...Bx
xxxxxxx
但是,在将字符正确加载到数据结构中时,我发现这个挑战相当困难。我不一定要寻找非黑即白的答案,只是寻找一些正确方向的指示,这样我就可以自己学习和完成挑战。这几天我一直在尝试这个,但没有取得太大进展(感觉像个白痴),非常感谢帮助。
您可以逐行阅读文件:
for (std::string line, std::getline(file_stream, line);)
{
vector.push_back(line);
}
如果你想遍历每个字符,你可以使用 for-range-loop
(C++11):
for (const auto& line : vector)
{
for (const auto one_char : line)
{
}
}