Redefinicja; różne podstawowe typy (typedef struct)
Mam trochę problemów z próbą poprawnego działania struktur, które są zdefiniowane w różnych plikach. Z tego co wiem, błąd mówi mi, że struktura jest definiowana dwa razy. Wierzę, że być może będę musiał użyć czegoś zewnętrznego? Próbowałem eksperymentować i szukać pomocy w Google, ale bezskutecznie.
Jakakolwiek pomoc byłaby najbardziej ceniona, dziękuję. Wszystkie cztery moje pliki są poniżej.
PLIK: Foo.h
typedef struct
{
int number;
} my_struct; // Redefinition; different basic types
PLIK: 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);
}
PLIK: Bar.h
#include "Foo.h"
void DoSomething(my_struct *number);
PLIK: Bar.c
#include "Bar.h"
void DoSomething(my_struct *number)
{
number->number = 10;
}