在C中初始化UNION的浮点值

时间:2018-11-24 06:46:42

标签: c

我在工会之下,

typedef union
{
  struct
  {
    float x;
    float y;
    float z;
    float Backup;
  } pt;
  float Max[4];
} Var3D;

当我尝试像Var3D= { 0.0, 0.0, 0.0, 0.0 };

那样初始化以上联合时

它显示类似构建错误

suggest braces around initialization of subobject
[-Werror,-Wmissing-braces]
Var3D= {0.0, 0.0, 0.0, 0.0};

我该如何解决?

1 个答案:

答案 0 :(得分:0)

请回答:

正如彼得提到的,您需要两对大括号:一个用于联合,一个用于联合中包含的数组。 因此,此初始化应该有效:

Var3D= {{ 0.0, 0.0, 0.0, 0.0 }};