zoukankan      html  css  js  c++  java
  • static 定义全局变量方法

     1 #include<stdio.h>
     2 #include<stdlib.h>
     3 
     4 void test()
     5 {
     6     int a=0;
     7     static int b=0;            //【skill】相当于定义了全局变量
     8     printf("int a:%d    static int b:%d
    ",a++,b++);
     9 }
    10 int main(int argc, char* argv[])
    11 {
    12     for(int i=0 ; i<5 ; ++i)
    13         test();
    14     system("pause");
    15     return 0;
    16 }

     external 用于多个c文件之间参数问题的解决

    百度上的解释:

    C语言中提供了存储说明符auto,register,extern,static说明的四种存储类别。四种存储类别说明符有两种存储期:自动存储期和静态存储期。其中auto和register对应自动存储期。具有自动存储期的变量在进入声明该变量的程序块是被建立,它在该程序块活动时存在,退出该程序块时撤销。

    在函数内部定义的变量成为局部变量。在某些C语言教材中,局部变量称为自动变量,这就与使用可选关键字a u t o定义局部变量这一作法保持一致。局部变量仅由其被定义的模块内部的语句所访问。换言之,局部变量在自己的代码模块之外是不可知的。切记:模块以左花
    括号开始,以右花括号结束。
    对于局部变量,要了解的最重要的东西是:它们仅存在于被定义的当前执行代码块中,即局部变量在进入模块时生成,在退出模块时消亡。
    定义局部变量的最常见的代码块是函数。

    整数变量x被定义了两次,一次在func1()中,一次在func2()中。func1()和func2()中的x互不相关。其原因是每个x作为局部变量仅在被定义的块内可知。
    语言中包括了关键字auto,它可用于定义局部变量。但自从所有的非全局变量缺省值假定为auto以来,auto就几乎很少使用了
  • 相关阅读:
    TP框架对数据库的操作
    Nginx的安装及配置
    微信小程序的入门
    MySQL的多表联查
    Larave中CSRF攻击
    Linux(三)
    Linux(二)
    Linux(一)
    安全测试检查项
    mysql-视图及索引简介
  • 原文地址:https://www.cnblogs.com/Evence/p/4461457.html
Copyright © 2011-2022 走看看