ヘッダー ファイル内の言語のデータ型によって宣言された構造体の変数。通常、データ型は変数の宣言に使用されますが、他のデータ型はプリプロセッサに渡されます。変数を宣言するためにプリプロセッサに送信するデータ型をいつ使用する必要がありますか? データ型と変数がプロセッサに送信されるのはなぜですか?
#define DECLARE_REFERENCE(type, name) \
union { type name; int64_t name##_; }
typedef struct _STRING
{
int32_t flags;
int32_t length;
DECLARE_REFERENCE(char*, identifier);
DECLARE_REFERENCE(uint8_t*, string);
DECLARE_REFERENCE(uint8_t*, mask);
DECLARE_REFERENCE(MATCH*, matches_list_head);
DECLARE_REFERENCE(MATCH*, matches_list_tail);
REGEXP re;
} STRING;