我无法从文本文件中获取信息并将其放入我创建的结构中,然后显示数组。到目前为止,我创建了结构并使用参数创建了函数,但它似乎不起作用。如果你能引导我朝着正确的方向前进,那就太好了。
#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
答案 0 :(得分:0)
在i < N
i <= N
而不是for(int i = 0; i <= N; ++i)