您好,我需要读取文件并将数据从文件获取到结构数组。
结构
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/