【发布时间】:2015-01-25 19:00:39
【问题描述】:
关于这个警告有很多问题,但我尝试过的问题似乎都没有使警告消失。
这就是我所拥有的:
typedef struct {
union {
float data[16];
float col_row[4][4];
};
} matrix44;
// ...
matrix44 result = {0};
我正在尝试将结构初始化为零,但无法让它不给出错误。正在编译为 C11。
我也尝试过其他变体,有些可笑:
matrix44 result = {{0}};
matrix44 result = { {0}, {0} };
matrix44 result = { {0}, { {0}, {0} } };
当然,他们都会发出警告。
如果我将结构简化为一维 data 数组,那么我可以使用 {{0}} 初始化它而不会发出警告。但将其减少到二维 col_row 数组仍然会给出警告。
是否有避免警告的正确方法?还是在这种情况下警告不正确?
【问题讨论】: