C++从文件填充结构数组

标签 c++ file structure

您好,我需要读取文件并将数据从文件获取到结构数组。

结构

struct Activity {
    string ID;
    string Name;
    string quantity; };

我有读取文件的功能

int* fillStructure(ifstream &fileActivity){


    int i=0;
    int numberOfElements = numberOfLines(fileActivity);

    Activity* myActivity = new Activity[numberOfElements];

    while (i < numberOfElements)
    {
          getline(fileActivity, myAktivity[i].ID, ',');
          getline(fileActivity, myActivity[i].Name, ',');
          getline(fileActivity, myActivity[i].quantity, '\n');      
          i++;
    }

   fileActivity.close(); 
   return myActivity; }

当我尝试在 main 函数中打印结构成员时,它不起作用

int main(){



    if (!(fileActivity.is_open())){
        cout << "Error when reading file" << endl;
        return 0;
    }  

    fillStructure(fileActivity);

    cout << myActivity[1].ID << endl; return 0;  }

我是初学者,你们能帮我看看我做错了什么吗?

最佳答案

您在 void fillStructure(ifstream &fileActivity) 中声明了 myActivity,但试图从 int main() 访问。

关于C++从文件填充结构数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47699397/

相关文章:

c++ - 为什么 Debug 构建失败而 Release 构建成功?

java - 有没有办法从另一个 java 程序中运行一个 java 程序?

java - 引用 root 的 Tomcat servlet 相对路径

c - 如何使此功能更加模块化并用于结构的多个成员?

c - 在c结构数组中显示值

c++ - 为什么 gcc 会警告 alignas 值过大?

c++ - 调用不带参数的函数,即使它们已定义?

javascript - 从 Chrome 打包应用程序保存文件

c - qSort 对结构进行排序

c++ - 函数指针作为模板