Я хочу иметь структуру, содержащую указатель на другую структуру, которая, в свою очередь, имеет указатель на функцию с аргументом функции, являющимся указателем на первый тип структуры, но я изо всех сил пытаюсь разрешить ссылки. Определения структуры находятся в разных файлах заголовков и должны быть доступны для другого кода в полном проекте.Структуры в разных заголовках ссылаются друг на друга
В упрощенном примере, в главной у меня есть:
#include "a.h"
typedef struct {
int x;
int (*func)(a_t * a);
int y;
} z_t;
В ах:
#ifndef A_H_
#define A_H_
#include "z.h"
typedef struct {
int b;
int c;
z_t * z;
} a_t;
#endif /* A_H_ */
и Zh:
#ifndef Z_H_
#define Z_H_
#include "a.h"
typedef struct {
int x;
int (*func)(a_t * a);
int y;
} z_t;
#endif /* Z_H_ */
Я в конечном итоге с круглыми и директив #includes тип a_t неизвестен в zh
Может ли кто-нибудь помочь?