別の構造体に依存する構造体を宣言しようとしています。sizeof
安全・徹底的に使いたい。
typedef struct _parent
{
float calc ;
char text[255] ;
int used ;
} parent_t ;
次に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
か?