C++fin.getline,多维数组资源

C++ fin.getline, multi dimensional array resources?

本文关键字:数组 资源 getline C++fin      更新时间:2023-10-16

对于我的CS类。。不能使用矢量!我到处找了一些关于如何将一行行字符串从txt读取到二维或三维数组的信息,但我找不到ANyTHING。我需要一些帮助。

正在读取如下所示的文本文件:

  • 得克萨斯州的首府是什么
  • 奥斯汀
  • 堪萨斯
  • 哈林根
  • 杜邦
  • 空白线
  • 空白线
  • 缅因州的首府是什么
  • 等等
  • 等等

所以它的方块:1个问题4个答案,两行空行,重复。

我的数组存储50个问题,每个问题有5行

string questions[50][5];

我将txt文件读入数组的功能

void read_questions(string[], string[])
{
ifstream.fin;
fin.open("questions.txt")
while (!fin.eof{}}
fin.getline([i][j];
}

我知道我离得很远,但如果你能给我指一些推荐信,我将不胜感激。我查阅了很多资源,在谷歌上搜索了很多次,但找不到任何与我的分类相近的例子。我在另一个网站上问过,但他们一直告诉我使用矢量,但我们不能,我们必须使用二维或三维阵列

string questions[50][5];

这行声明了一个strings数组的数组。这是一个足够好的开始。

要读取中的每一行,您需要:

  • 读取单个字符串的函数
  • 在五个字符串中读取的循环,以及
  • 五十组五个字符串组成的循环

嵌套循环很简单:

for(int i = 0; i < 50; ++i)
  for(int j = 0; j < 5; ++j)
  {
    do some work here.
  }

选择一个输入函数也很容易。您将需要使用std::getline(std::istream&, std::string&)