首页 > 后端开发 > C++ > C 中变量何时以及如何自动初始化?

C 中变量何时以及如何自动初始化?

Barbara Streisand
发布: 2024-12-03 17:31:10
原创
897 人浏览过

When and How Are Variables Automatically Initialized in C  ?

C 中的变量初始化:何时何地自动发生?

理解 C 中的变量初始化对于开发健壮的代码至关重要。与 int 变量自动初始化为 0 的假设相反,以下代码片段演示了情况并非如此:

int main () {
    int a[10];
    int i;
    cout << i << endl;
    for(int i = 0; i < 10; i++)
        cout << a[i] << " ";
    return 0;
}
登录后复制

此代码将为未初始化的变量 i 输出一个随机值。为了解决这个问题,有必要了解 C 中控制初始化的规则。

自动初始化规则

在 C 中,变量仅在特定条件下自动初始化:

  • 类/结构实例:默认构造函数初始化将初始化所有类或结构体实例中的基本类型。
  • 数组初始化语法: 使用花括号初始化数组,例如 int a[10] = {} 或 int a[10] = { 1,2},将自动将所有未初始化的元素清零。
  • 全局/外部变量: 在函数作用域(全局或外部)之外声明的变量会自动初始化为 0。
  • 静态变量: 带有 static 关键字的变量会自动初始化为 0,无论他们的范围。

以上是C 中变量何时以及如何自动初始化?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板