结构的冲突类型
Conflicting types for a struct
我有一个家庭作业,我有一个我无法修改的代码库,我必须制作一个必须填充函数的结构。
这是代码,其中函数 fillDrivers() 来自代码库,结构是我制作的。
#include <string.h>
#include <stdbool.h>
void fillDrivers(Driver[]);
typedef struct{
char name[20];
char surname[20];
int carNumber;
bool rookie;
}Driver;
int main(void)
{
return 0;
}
void fillDrivers(Driver arrayDrivers[]) {
int i = 0;
// Lewis Hamilton
strcpy(arrayDrivers[i].name, "Lewis");
strcpy(arrayDrivers[i].surname, "Hamilton");
arrayDrivers[i].carNumber = 44;
arrayDrivers[i].rookie = false;
i++;
}
原始代码库包含网格中的所有驱动程序,我只留下第一个以减小大小。
问题是这段代码给我这个错误:第 19 行 'fillDrivers' 的冲突类型。
如果在结构中我在 Driver 处添加方括号,我会收到此错误:
数组的元素类型 'Driver'(又名 'struct (unnamed struct at C:\Users\paual\Desktop\Uni\Programmazione\Homeworks\Homework_3nuovo\main.c:7:9) []'),第 19 行也是如此。
我需要做什么?
首先需要声明Driver名称,然后才能在函数声明中使用它
typedef struct{
char name[20];
char surname[20];
int carNumber;
bool rookie;
}Driver;
void fillDrivers(Driver[]);
我有一个家庭作业,我有一个我无法修改的代码库,我必须制作一个必须填充函数的结构。 这是代码,其中函数 fillDrivers() 来自代码库,结构是我制作的。
#include <string.h>
#include <stdbool.h>
void fillDrivers(Driver[]);
typedef struct{
char name[20];
char surname[20];
int carNumber;
bool rookie;
}Driver;
int main(void)
{
return 0;
}
void fillDrivers(Driver arrayDrivers[]) {
int i = 0;
// Lewis Hamilton
strcpy(arrayDrivers[i].name, "Lewis");
strcpy(arrayDrivers[i].surname, "Hamilton");
arrayDrivers[i].carNumber = 44;
arrayDrivers[i].rookie = false;
i++;
}
原始代码库包含网格中的所有驱动程序,我只留下第一个以减小大小。 问题是这段代码给我这个错误:第 19 行 'fillDrivers' 的冲突类型。 如果在结构中我在 Driver 处添加方括号,我会收到此错误: 数组的元素类型 'Driver'(又名 'struct (unnamed struct at C:\Users\paual\Desktop\Uni\Programmazione\Homeworks\Homework_3nuovo\main.c:7:9) []'),第 19 行也是如此。
我需要做什么?
首先需要声明Driver名称,然后才能在函数声明中使用它
typedef struct{
char name[20];
char surname[20];
int carNumber;
bool rookie;
}Driver;
void fillDrivers(Driver[]);