[C] static和extern的作用

static:

  当用于函数定义或者代码块之外的变量声明时,static关键字用于修改标识符的链接属性,从external改为internal。

  当用于代码块内部的变量声明时,static关键字用于修改变量的存储类型,从自动变量修改为静态变量。

extern:

  用来声明变量,使得函数可以访问在其他源文件定义的外部变量(该变量在不同于该函数所在的源文件定义,且为全局变量,亦即其定义的位置在所有的代码块之外,其作用域为文件作用域)。

原文地址:https://www.cnblogs.com/southernduck/p/4088268.html