c - 函数静态变量的初始化

标签 c variables initialization

我在一个函数中声明了一个静态变量,它没有显式初始化为零。

函数内所有未初始化的静态变量是否默认设置为零,就像全局(文件)级别的静态变量一样?

最佳答案

所有没有显式初始化器的静态变量都被初始化为零。

进入 BSS 的所有变量段被初始化为零。

在 C 中,所有没有显式初始值设定项的全局变量和静态变量都进入 BSS 段,因此默认为零。

关于c - 函数静态变量的初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2190243/

相关文章:

c - 运行时错误(堆栈溢出)

python - 类外的变量范围

java - 什么是 Java 中静态字段的初始值设定项

android - 将 C 程序迁移到 Android NDK

c - 为什么 >>24 会导致 -Wconversion 但 >>23 不会?

php - 临时变量 v 数组索引

c++ - 为什么我的 Arduino 不能超过 10?

c++ - 如何在 C++ 对象中初始化数组

c++全局变量初始化(initializer_list的 vector )

c++ - 字素生成 - 时间与内存复杂度