c++教师端存入的数据,为什么学生端读取不出来啊?

img

img

img

你的Download_File函数中

while (getline(fp, temp))
{
  //其中getline(fp, temp) 只是把他读取到temp中 你应该再用你temp赋值给你的 St
}


int Student::Download_File()
{
    // delete [] St; // You may need to delete previous data here.
    St = new Student[100];
    ifstream file("data.txt");
    int i = 0;
    while (file)
    {
        Student &s = St[i];
        file >> s.name >> s.age >> s.no >> s.score[0] >> s.score[1] >> s.score[2] >> s.total >> s.average;
        if (!file)
            break;
        i++;
    }
    Size = i;
    return Size;
}

我感觉是fp的打开标志位有问题,ios::app是追加模式,如果文件存在则直接指向文件末尾,而不是开头,这个时候统计行数首先就是0,所以读不出数据。你把ios::app去掉试试