我需要在堆上声明一个结构数组,然后将数据从堆栈上的并行数组和计算传输到每个结构中。我宣布
struct Grades
{
string studentName;
int scores[4];
double average;
};
....
Grades *art1301 = new Grades;
....
(art1301 + i)->studentName = names[i];
for((int i = 0 ; i < 5 ; i++ )
(art1301 + i)->scores[j] = exams[i][j];
(art1301 + i)->average = average;
我的程序访问第一条记录,但它在访问第二条记录的第一个字段后崩溃。我不明白为什么它适用于第一张唱片,但在第二张唱片中间死了?我是否正确访问了结构?
谢谢你。