我有一个结构变量,在 .c 文件中定义:
struct {
int write_cursor;
int read_cursor;
message messages[10];
} out_messages = {0, 0};
为了使它在其他文件中可用,我有一个 .h 文件:
extern struct {
int write_cursor;
int read_cursor;
message messages[10];
} out_messages;
这适用于 Microchip C18 编译器。XC8 编译器给出错误:
communications.c:24: error: type redeclared
communications.c:24: error: conflicting declarations for variable "out_messages" (communications.h:50)