static关键字有两种意思,你看上下文来判断1,表示变量是静态存储变量
表示变量存放在静态存储区.
2,表示该变量是内部连接
(这种情况是指该变量不在任何{}之内,就象全局变量那样,这时候加上static)
,也就是说在其它的.cpp文件中,该变量是不可见的(你不能用).当static加在函数前面的时候
表示该函数是内部连接,之在本文件中有效,别的文件中不能应用该函数.
不加static的函数默认为是全局的.
也就是说在其他的.cpp中只要申明一下这个函数,就可以使用它.
表示变量存放在静态存储区.
2,表示该变量是内部连接
(这种情况是指该变量不在任何{}之内,就象全局变量那样,这时候加上static)
,也就是说在其它的.cpp文件中,该变量是不可见的(你不能用).当static加在函数前面的时候
表示该函数是内部连接,之在本文件中有效,别的文件中不能应用该函数.
不加static的函数默认为是全局的.
也就是说在其他的.cpp中只要申明一下这个函数,就可以使用它.
解决方案 »
- Vc6新手问题
- 我想通过管道和一个控制台程序通信,不知道下面的程序可以吗?为什么ReadFile一直没有返回?
- 关于精度的问题.?
- 用管道读取cmd,如何让cmd可以操作?
- 在VC7.1里面,究竟怎样设置才能使用gdi+啊
- 怎样设置CEdit的字体?
- 如何不重装vc也在另外一个系统中可以完好运行?
- VC++环境下MSComm串口通信
- :我将给这位高人108分(分三次给,何如?)!如何将MATLAB中的C函数直接用到VC中,而不需用MATLAB的编译器LCC,并且程序不需打开MATLAB集成环境?
- 可以使用参与分回答问题吗?
- 有人可以告诉我关于“排课程表”的原理么?
- 所谓高手不过如此~~没人回答VC++6.0有一点难度的问题
在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中不能使用
{}
如果再没有理解我就不说了,你还是好好看书吧.