Я использовал более простой подход (избегайте нескольких шагов в одной строке с этими структурами) и у меня не было проблем со следующими файлами:
my_entity.h
struct EntityStruct {
long _id;
char *_myEntityType;
char *_myEntitySubType;
long _myEntityGUID;
long _myEntityOwnerGUID;
long _myEntityContainerGUID;
} ;
typedef struct EntityStruct MyEntity ;
typedef struct {
MyEntity *pointer2MyEntity;
} MyContainerEntity;
main.c
#include <stdio.h>
#include "my_entity.h"
int main()
{
MyEntity firstEntity;
MyContainerEntity containerEntity;
containerEntity.pointer2MyEntity = &firstEntity;
return 0;
}
Альтернативный контент для my_entity.h
typedef struct EntityStruct {
long _id;
char *_myEntityType;
char *_myEntitySubType;
long _myEntityGUID;
long _myEntityOwnerGUID;
long _myEntityContainerGUID;
} MyEntity ;
typedef struct {
MyEntity *pointer2MyEntity;
} MyContainerEntity;
ОК, я допускаю, что ошибся, я думал, что необходимо иметь отдельное отдельное имя для структуры, нодаже код, который дает OP, работает (я не тестировал его изначально, потому что я поднялся, редактируя его и протестировав только мою версию).Так что, поскольку он не дает полных файлов для .h и main (), я думаю, мы не можем ему помочь.