【每日一C之八】C语言static用法

来源:互联网 发布:如何利用碎片时间知乎 编辑:程序博客网 时间:2024/06/03 16:01

 每日一C之static用法


       每天一个C语言贝壳厚积薄发积跬步以致千里

 今日贝壳:C语言static的用法与static修饰变量的空间存储特征。
           要点: static在C中主要有两个作用,一修饰作用域;二修饰生存期
                    1.static修饰全局变量:修饰作用域
                                 static修饰的静态全局变量与普通全局变量唯一的区别是:静态全局变量仅在此源文件中有效,不能被其他源文件引用。该全局变量的作用域被限定在此源文件。
                    2.static修饰函数:修饰作用域。
                                 static修饰的函数,作用域仅在此源文件,不能在其他源文件中调用。该函数的作用域被限定在此源文件。
                    3.static修饰局部变量:修饰生存期
                                  static修饰的静态局部变量,同普通局部变量的区别:
  • 静态局部变量存储在静态区,普通局部变量存储在栈区。
  • 静态局部变量未初始化时,系统自动置0;初始化仅在函数初次调用时进行一次
  • 静态局部变量在函数结束时不会释放,其生存期为整个程序运行期,并能保存上次调用的值。
 去掉static再运行一下程序,结果不同


                     Have a nice day !
6 0
原创粉丝点击