C语言的静态变量声明static
欢迎访问我的新博客:http://www.milkcu.com/blog/
原文地址:http://www.milkcu.com/blog/archives/1365841740.html
static声明外部变量
static的作用域限定为被编译源文件的剩余部分,不会和同一程序中的其他文件中的相同的名字相冲突。
static声明函数
除了对该函数声明所在的文件可见外,其他文件都无法访问。
static声明内部变量
该变量只能在特定函数中使用,但一直占据存储空间。变量的值不会因函数的结束而变化,static声明的变量可以起到外部变量的一部分作用。
测试代码如下,返回值为16。
# include <stdio.h> int add(int a) { static int i = 7; i = a + i; return i; } int main(void) { add(3); add(2); printf("%d", add(4)); return 0; }