gpt4 book ai didi

C++ 读取文本文件以填充二维数组

转载 作者:行者123 更新时间:2023-11-27 23:40:05 25 4
gpt4 key购买 nike

所以我正在尝试用 C++ 创建一个贪吃蛇游戏。当玩家开始不同难度的游戏时,他们将可以选择关卡。每个级别都存储在一个 .txt 文件中,我在从文件填充数组时遇到问题。到目前为止,这是我从文件中获取数组的代码。

#include <iostream>
#include <fstream>
using namespace std;

int main()
{
ifstream fin("LevelEasy.txt");
fin >> noskipws;

char initialLevel[10][12];

for (int row = 0; row < 10; row++)
{
for (int col = 0; col < 12; col++)
{
fin >> initialLevel[row][col];
cout << initialLevel[row][col];
}
cout << "\n";
}

system("pause");

return 0;
}

它填充第一行并完美打印。当它到达行尾时就会出现问题,随后会在之后的每一行上引起问题。我希望它能像这样打印;

############
# #
# #
# #
# #
# #
# #
# #
# #
############

但它最终只是打印出这样的东西;

############

#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
###

我只是想知道如何在到达行尾时停止添加到数组的行并移至下一行?任何帮助将不胜感激。

最佳答案

这是我用来做这件事的方法:

#include <iostream>
#include <fstream>
#include <string>
#include <vector>

int main() {
std::ifstream fin("LevelEasy.txt");

std::vector <std::string> initialLevel;
std::string line;

while(std::getline(fin,line)) {
initialLevel.push_back(line);
std::cout << line << '\n';
}
}

关于C++ 读取文本文件以填充二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55873559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com