A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© huguozhang 中级黑马   /  2015-7-20 23:13  /  610 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

static和extern 修饰局部变量
  static 修饰的变量,只有你的包含那个变量定义的源代码文件可以访问(内部变量)
  extern 定义的变量的哪个源文件都可以访问 只要声明了就可以(外部变量)

    static对局部变量的作用:
        1,延长局部变量的生命周期,从程序启动到程序退出,但是它并没有改变变量的作用域
        2,定义变量的代码在整个程序运行期间仅仅会执行一次
    extern 不能修饰局部变量


     static和extern 修饰全局变量
     全局变量
        内部变量:只能在当前文件中访问的变量,不能在其他文件中使用
        外部变量:可以在其他中访问的变量,默认所有全局变量都是外部变量

    static作用
        声明一个内部变量
        定义一个内部变量
      由于静态全局变量的作用域局限于一个源文件内,只能为该源文件内的函数公用,因此可以避免在其它源文件中引起错误。
      在不同文件中,可以声明同名变量

    extern作用
        extern修饰的全局变量,表示当前变量可以在本文件中使用,也可以在其它文件中使用
        extern修饰的全局变量在不同的文件中不能同名(两个文件需 #include 有包含关系)


    static和extern 对函数作用

    有A、B两个文件

    内部函数:在A文件中定义的函数,在A文件中访问 (static 仅可修饰内部访问的函数)
    外部函数:在B文件中定义的函数,函数在B中称之为 外部函数

    extern 声明的函数,可以在定义的文件中使用,也可以在其他文件中使用。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马