变量的作用域以及生命周期是怎样创建和销毁的

文章目录

  • 一、变量的作用域

  • 1.局部变量的作用域
  • 2.全局变量的作用域
  • 二、变量的生命周期

  • 1.局部变量的生命周期
  • 2.全局变量的生命周期


一、变量的作用域

1.局部变量的作用域

局部变量的作用域是局部变量所在的范围以内

例如:

#include

int main()
{
    int a = 20;
    int b = 10;
    int c = a + b;
    printf("%d\n", c);
    return 0;
}
printf("%d", c);

   main函数花括号以内的叫作局部变量,出了花括号以外使用printf的话编译器会报错,因为c是在main函数里面属于局部变量所以报错。

 2.全局变量的作用域

全局变量的作用域是整个工程

例如:

#include

int c = 2023;
void test()
{
    printf("%d\n", c);
}

int main()
{
    printf("%d\n", c);
    test();
    return 0;
}

此时的c是全局变量即可以在main函数里打印也能在test函数里打印 。

变量的作用域以及生命周期是怎样创建和销毁的_第1张图片

   当然全局变量也是可以跨文件使用的。

变量的作用域以及生命周期是怎样创建和销毁的_第2张图片

 注意:在跨文件使用全局变量时要使用extern声明一下这个全局变量,不声明的话这个全局变量是用不了的。

二、变量的生命周期

1.局部变量的生命周期

局部变量的生命周期是进入局部变量生命周期开始,出了局部变量生命周期结束

2.全局变量的生命周期

全局变量的生命周期就是程序的生命周期,程序开始-全局变量的生命周期也就开始,程序结束-全局变量的生命周期也就结束了。


总结

    局部变量和全局变量的作用域:一个是只能在局部变量里使用,一个是整个工程都可以使用,跨文件使用全局变量时要声明一下全局变量。

    局部变量和全局变量的生命周期:一个是进入局部变量生命周期开始,出局部变量生命周期结束。一个是程序执行生命周期开始,程序结束生命周期结束。

你可能感兴趣的:(C语言,笔记)