首先从静态变量说起. C语言里面静态变量有三种: 分别是外部链接性,内部链接性和无链接性.
声明外部链接的变量的方法是在代码块外面声明它. 此变量是全局变量,多文件中亦可用.
声明内部链接的变量的方法是在代码块外面声明它并加上static限定符. 此变量是全局变量,但仅在本文件中可用.
声明无链接的变量的方法是在代码块里面声明它并加上static限定符. 此变量是局部变量,但仅在本代码块中可用.
例:
#include<...........>
int global=1; //声明外部链接的变量
static int global2 //声明内部链接的变量
int func()
{
int global=5; //声明的内部变量和全局变量重名,调用时将会隐藏全局的global;
cout<
//如何引用外面的变量呢???
cout<<::global>
static int global3; //声明无链接的变量
}
int main()
{
extern int alobal; //在本文件中此句可选.此句的意思为你需要引用外部的变量global;
global=8; //直接引用全局变量.
}