C 结构内部 union 内部结构

标签 c struct unions

如何初始化结构 B 或 C 的变量?

typedef struct _A
{
  union
  {
    struct
    {
      int b;
    } B;
    struct
    {
      int c;
    } C;
  } u;
} A;

有点像 A.u.B *bVar; 不起作用

最佳答案

typedef 只包含 A,不包含其中定义的 union 或结构。

typedef 不能像那样嵌套 - 每个用户定义的“类型”必须有一个单独的标签,因此 A.u.B 类型变量的声明是非法的.

关于C 结构内部 union 内部结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10336095/

相关文章:

c - for循环中的return语句

c - 在 C 编程中将结构传递给函数

c++ - 推荐 boost::variant over union

c - 我们如何在 SDL_Event( union )中分配两个值?

c - gcc 的预处理器如何评估哈希值?

c - For循环条件

c - 在 C 中 malloc sizeof 一个 typedef 结构

c - 是否使用 union 未定义行为访问结构上的特定数组索引?

c - 如何在 C 中并行化嵌套(依赖)for 循环,Open MP

c++ - 函数结构指向其他结构的其他函数