У меня возникли некоторые проблемы с попытками заставить структуры работать правильно, когда они определены в разных файлах. Насколько я могу судить, ошибка говорит мне, что структура определяется два раза. Я считаю, что, возможно, мне нужно где-то использовать extern? Я пытался экспериментировать и искать помощь в Google, но безрезультатно.
Спасибо за любую помощь. Все четыре моих файла ниже.
ФАЙЛ: Foo.h
typedef struct
{
int number;
} my_struct; // Redefinition; different basic types
ФАЙЛ: Foo.c
#include "Foo.h"
#include "Bar.h"
#include <stdio.h>
my_struct test;
int main(void)
{
test.number = 0;
DoSomething(&test);
printf("Number is: ", &test.number);
}
ФАЙЛ: Bar.h
#include "Foo.h"
void DoSomething(my_struct *number);
ФАЙЛ: Bar.c
#include "Bar.h"
void DoSomething(my_struct *number)
{
number->number = 10;
}