鉴于这个快速完成的示例,我希望能够通过公共属性(animals
或color
)搜索mainFoodSource
数组,并仅输出{{1} },或bears
s指定了匹配属性。
鉴于我的snake
数组的定义如下:
animals
我如何能够使用struct animal{
char key; //I believe this is a correct usage of a discriminator
union myUnion{
char mainFoodSource[10];
int numLimbs : 3;
struct bear{
char blackOrBrown[5];
float height; //in feet standing
} b;
struct snake{
float length;
char mainColor[20];
} s;
} u;
} animals[20];
区分数组中的每个元素bear
或snake
;我已经在联盟之前提出了?
答案 0 :(得分:1)
它只是基于您在要求中解释的内容的建议。
让变量键存储' b'用来表示它的熊和“熊”。如果它是一条蛇。
myUnion将分配最大内存(sizeof(float)+ sizeof(char [20]);
尝试将mainColor和mainFoodSource放在一个struct变量中,以防止混淆。