Имам 2 заглавни файла, които трябва (?) да се включват един друг.
Първият
заглавие1.h
изглежда така:
#ifndef HEADER1_H
#define HEADER1_H
#include "header2.h"
typedef Needed_s
{
size_t something;
} Needed_t;
typedef partialstruct_s
{
size_t something;
Needed_t *pointer;
} partialstruct_t;
void function (MyStruct_t Parameter);//<- this line gets the error
#endif
Второто
заглавие2.h
като този:
#ifndef HEADER2_H
#define HEADER2_H
#include "header1.h"
typedef MyStruct_s
{
//struct partialstruct_s ThisOne;
//I tryed both ways!
partialstruct_t ThisOne;
} MyStruct_t;
#endif
Не харесвам този начин на работа, но също така не обичам да декларирам структури в различни заглавки, където те твърдят, че свързаните не принадлежат към тях.
Кодът е просто MCTR, така че, моля, не ми давайте съвети за подобрения.
Сега получавам грешката:
header1.h:17: грешка: очаквани спецификатори на декларация или '...' преди 'MyStruct_t'
Така че този проблем причинен ли е от зависимостта за включване? И ако е така, как мога да го реша?