gpt4 book ai didi

c - 如何检查 C 中的 union 是否不是 "initialized"?

转载 作者:太空狗 更新时间:2023-10-29 15:24:48 24 4
gpt4 key购买 nike

我可以检查 union 在 c 中是否为 null 吗?例如:

union{ char * name, struct Something * something ... }someUnion;

有没有办法在不进行元素 vise 检查的情况下检查是否没有元素被初始化?

谢谢。

最佳答案

不,不是没有为此目的添加特定标志。例如:

struct someStruct {
int initialized;
union {
char *name;
struct Something *something;
};
};

您甚至可以存储一个标志而不是 initialized 来指示 union 包含哪种数据。这通常称为 Tagged union .

关于c - 如何检查 C 中的 union 是否不是 "initialized"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10542925/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com