考虑下面的代码:如果发现初始化结构不修改所有成员
typedef struct _sMYSTRUCT_BASE
{
int b_a;
int b_b;
int b_c;
} sMYSTRUCT_BASE;
typedef struct _sMYSTRUCT
{
sMYSTRUCT_BASE base;
int a;
int b;
} sMYSTRUCT;
Private const sMYSTRUCT mystruct_init =
{
0,
1,
3,
4
};
我正在寻找一种方式来产生一个错误(编译期或运行时),以表明结构初始化不是招”明确“触及”所有结构成员。 结构中有5个整数,但'mystruct_init'只有4个值。 我知道最后一个成员(mystruct_init.b)将为零,但我需要某种警告/错误来通知程序员这个错误。 这必须在一个非常旧的编译器上工作(可能甚至不符合ansi-c)。
任何有这种方式的提示? – user2448122