通常用于{0}
初始化 astruct
或 anarray
但考虑第一个字段不是标量类型的情况。如果 的第一个字段struct Person
是另一个struct
或数组,则此行将导致错误 ( error: missing braces around initializer
)。
struct Person person = {0};
至少 GCC 允许我使用一个空的初始化列表来完成同样的事情
struct Person person = {};
但这是有效的 C 代码吗?
另外:这条线是否保证给出相同的行为,即零初始化struct
?
struct Person person;