C中静态变量的初始化
可能的重复:
C 中静态变量的初始化
我知道全局变量或static 在 C 中自动初始化为零。但是,我不确定它们是否都被初始化或仅其中之一被初始化。 请注意,我不是在谈论函数中定义的变量,而是在 .c 文件中全局定义的变量。
那么以下哪些变量会自动初始化为零?
static struct mystruct var1;
struct mystruct var2;
static struct { int x; int y; } var3;
Possible Duplicate:
The initialization of static variable in C
I know that either global variables or static are automatically initialized with zero in C. However, I'm not sure if both or only one of them are initialized.
Note that I'm not talking about variables defined in functions but globally in the .c file.
So which of the following variables are automatically initialized with zero?
static struct mystruct var1;
struct mystruct var2;
static struct { int x; int y; } var3;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
C 常见问题。
C FAQ.
中运行了以下代码
我在 codepad结果
:无论如何,我不喜欢对初始化做出假设,但YMMV。
I ran the following code in codepad
results:
Regardless, I don't like making assumptions about initialisation but YMMV.