0

我必须将结构定义为:

typedef struct {
  char weekday[WEEKDAY_SIZE], 
       start_time[START_TIME_SIZE], 
       home_team[TEAM_SIZE], 
       away_team[TEAM_SIZE], 
       spectators[SPECTATOR_SIZE];

  int day, month, year, round, home_team_score, away_team_score;
} MATCH;

typedef struct {
  MATCH match[MATCH_PR_ROUND];
} ROUND;

填充主函数的结构:

ROUND round[33];
MATCH equal_four_goal_matches[198];

我需要将一轮(例如,匹配的数组)分配给在特定条件内的另一个相应的匹配数组。

  for(i=0; i<ROUNDS_PR_SEASON; i++) {
    for(j=0; j<MATCH_PR_ROUND; j++) { 
      int match_is_draw = round[i].match[j].home_team_score == round[i].match[j].away_team_score;
      int total_goals = round[i].match[j].home_team_score + round[i].match[j].away_team_score;

      if(match_is_draw && total_goals <= 4) {
        /* Trying to assign each match round[i].match[j] to the new array */
        round[i].match[j] = equal_four_goal_matches[k];
        k++;
        (*length)++;
      }
    }
  }

所以基本上我试图将一个结构成员数组分配给另一个与成员相同类型的结构数组。

已使用 printf 查看是否有任何内容存储在新结构数组的成员中,但它不包含任何内容。使用 ANSI89 选项和 gcc 编译时没有错误。

非常感谢任何帮助。

4

0 回答 0