我有一个已经可以工作的程序,现在必须将使用的 4 个数组更改为 1 个,所以我使用了 typedef 结构并创建了一个名为 stuff 的数据类型。然后制作了一组数据类型的东西,称为一切。一切都包含四个数组:
typedef struct structure
{
char names[13][9];
int scores[13][4];
float average[13];
char letter[13];
} stuff;
稍后在程序中,fopen 是这样调用的:
FILE *student, *score;
student = fopen("student.dat", "r");
score = fopen("scores.dat", "r");
之后使用 fscanf :
for(i=0; i<13; i++)
{
for(j=0; j<4; j++)
{
fscanf(score, "%d", everything[i].scores[i][j]);
}
}
fclose(score);
完成整个程序后,我不断收到分段错误,并且不确定它来自哪里,所以我注释掉了所有内容并逐个取消注释,以查看分段错误开始发生的位置。它开始再次出现在这里,我不知道为什么。我该怎么做才能修复它?