相关疑难解决方法(0)

静态变量初始化?

我想知道为什么C,C++和Java中的静态变量默认初零归零?为什么局部变量不是这样呢?

c c++ java static-initialization

10
推荐指数
2
解决办法
8535
查看次数

非静态变量初始化

我正在读一本关于C progaming faq的书.这是本书的篇章

自动变量是在没有static关键字的函数或代码块内定义的变量.如果未显式初始化这些变量,则这些变量具有未定义的值.如果未初始化自动变量,则必须确保在使用该值之前将其分配给它.

这是我的代码:

#include <stdio.h>
int main (int argc, const char * argv[])
{    
    {
        int x;
        printf("%d", x);
    }
}
Run Code Online (Sandbox Code Playgroud)

结果printf为0.为什么变量初始化?

c

2
推荐指数
1
解决办法
4722
查看次数

标签 统计

c ×2

c++ ×1

java ×1

static-initialization ×1