Я пытаюсь объявить структуру, которая зависит от другой структуры.
Я хочу использовать sizeof для того, чтобы быть безопасным/педантичным.
typedef struct _parent
{
  float calc ;
  char text[255] ;
  int used ;
} parent_t ;
Теперь я хочу объявить struct child_t, который имеет тот же размер, что и parent_t.text.
Как я могу это сделать? (Псевдо-код ниже.)
typedef struct _child
{
  char flag ;
  char text[sizeof(parent_t.text)] ;
  int used ;
} child_t ;
Я пробовал несколько разных способов с parent_t и struct _parent, но мой компилятор не принимает.
Как трюк, похоже, это работает:
parent_t* dummy ;
typedef struct _child
{
  char flag ;
  char text[sizeof(dummy->text)] ;
  int used ;
} child_t ;
Можно ли объявить child_t без использования dummy?