我在从文本文件中获取信息并将其放入我创建的结构中,然后显示数组时遇到了麻烦。到目前为止,我已经创建了结构并使用参数创建了函数,但是它似乎没有用。如果您能引导我朝正确的方向发展,那就太好了。
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
const int N=5;
struct RECORD
{
char *Name;
int Age;
float Gpa;
};
void CopyRecords (string filename, int p[N]);
void Display (RECORD x[]);
int main()
{
RECORD p[N];
//Read data from this file into array p
CopyRecords("data2.txt", p);
//Display all records
Display(p);
//Terminate Program
system ("pause");
return 0;
}
void CopyRecords (string filename, int p[N])
{
ifstream f;
f.open(filename, ios::in);
for(int i = 0; i <= N; ++i)
{
f >> p[i];
}
}
void Display (RECORD x[])
{
for (int i = 0; i < N; ++i)
cout << x[i].Name << " " << x[i].Age << " " << x[i].Gpa << endl;
}
这是我的data2.txt
Martin Smith/ 22 2.2
Austin Clinton/ 18 3.1
Johnson/ 19 2.9
Maggie Jones/ 23 2.3
Tyler W Brown/ 16 3.4
最佳答案
建议使用i < N
而不是i <= N
中的for(int i = 0; i <= N; ++i)
关于c++ - 将文本文件读入结构并显示数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19352920/