gpt4 book ai didi

c++ - 在 C++ 运行时创建多个不确定数量的链表

转载 作者:搜寻专家 更新时间:2023-10-31 01:44:43 25 4
gpt4 key购买 nike

我是 C++ 的新手。我目前正在做一个任务,需要我读取一个文件,并将每一行存储到一个链表中,然后将所有链表存储到一个链表中。总之,我需要创建一个行的链接列表,并且每一行都包含字符的链接列表。

我被困在这里很长一段时间了。由于该程序将由具有不同行数的文件进行测试。所以我在想我应该根据实际行数创建多个链表。但是,我目前的解决方案无法实现这一点。

下面是我的loadFile方法

void loadFile(list< <list<char> > &rows, const string &file)
{
list<char> elements;
char ch;
ifstream fin;
fin.open(file.c_str());
while(!fin.eof()){
while(fin.get(ch))
{
if(ch != '\n')
{
elements.push_back(ch);
}
rows.push_back(elements);
}
}
fin.close();
}

显然,这个方法并没有做我应该做的事情。所以我想知道无论如何我可以根据文件中的行数创建尽可能多的链表,并将所有链表插入行链表?或者有人可以建议我的替代解决方案吗? (文件必须存储到链接列表中,这意味着我们不能使用数组等。)提前感谢您的帮助。

最佳答案

考虑使用字符串而不是单独存储每个字符

#include <iostream>
#include <list>
#include <string>

int main()
{
std::list<std::string> lines;
std::string line;

while (getline(std::cin, line))
lines.push_back(line);
}

Please don't do this:

 while(!fin.eof()){

关于c++ - 在 C++ 运行时创建多个不确定数量的链表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23102334/

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