static关键字有两种意思,你看上下文来判断1,表示变量是静态存储变量
表示变量存放在静态存储区.
2,表示该变量是内部连接
(这种情况是指该变量不在任何{}之内,就象全局变量那样,这时候加上static)
,也就是说在其它的.cpp文件中,该变量是不可见的(你不能用).当static加在函数前面的时候
表示该函数是内部连接,之在本文件中有效,别的文件中不能应用该函数.
不加static的函数默认为是全局的.
也就是说在其他的.cpp中只要申明一下这个函数,就可以使用它.
表示变量存放在静态存储区.
2,表示该变量是内部连接
(这种情况是指该变量不在任何{}之内,就象全局变量那样,这时候加上static)
,也就是说在其它的.cpp文件中,该变量是不可见的(你不能用).当static加在函数前面的时候
表示该函数是内部连接,之在本文件中有效,别的文件中不能应用该函数.
不加static的函数默认为是全局的.
也就是说在其他的.cpp中只要申明一下这个函数,就可以使用它.
在share.cpp中的内容如下
#include "share.h"
static int n;//这表示是内部变量.你不能在other.cpp中使用,但是他的存储也是和全局变量一样的方式
int m;//这表示是全局变量,在other.cpp中申明一下就可以用
void myfun()
{
static int a;//这表示a是静态存储的.它也只能在该函数中使用
}static void staticfun()//这表示该函数是内部的,也就是说你在other.cpp中不能使用
{}
如果再没有理解我就不说了,你还是好好看书吧.