Static 作用
来源:互联网 发布:速卖通标题优化工具 编辑:程序博客网 时间:2024/05/16 10:53
本文摘选自陈正冲老师的《C语言深度解剖》第一版
在C语言中,static主要定义全局静态变量,定义局部静态变量,定义静态函数。
1、 修饰变量
修饰的变量又分为局部变量和全局变量,但都存储在内存的静态区。
1)静态全局变量,作用域仅限于变量定义的文件中,其他文件使用extern声明也无法调用。即,作用域为从定义开始到本文件结束,在定义处之前的函数也不能使用它。若没有初始化,默认为0。
2)静态局部变量,在函数体内定义,仅在本函数内起作用。但由于静态变量在内存的静态区,所以函数运行结束,静态变量值不会被销毁,静态局部变量不会被再次初始化,而是沿用上次函数退出时的值。
Static int j;
void fun(void)
{
Static int i = 0;
print(“i = %d”,i);
i++;
}
Void fun2(void)
{
j = 0;
print(“j = %d”,j);
j++;
}
int main()
{
for(k=0;k<3;k++)
{
fun();
fun1();
}
return 0;
}
i =0
j =0
i =1
j =1
i =2
j =2
2、 修饰函数
修饰函数,函数前加static使得函数成为静态函数。但此处的static的含义不是指存储方式,而是指对函数的作用域仅限于本文件(即又称内部函数),它的好处是:不同人编写不同函数时,不用担心自己定义的函数,是否会与其他文件中的函数同名。
阅读全文
0 0
- static 作用
- static作用
- static作用
- static作用
- static 作用
- static 作用
- static作用
- static 作用
- static作用
- static 作用
- static作用
- static 作用
- static 作用
- :static作用:
- static作用
- static作用
- static 作用
- static作用
- 日志管理中获取浏览器、操作系统、IP等信息。。。
- ES6-Symbol(ECMAScript 6 入门笔记)
- 分布式队列ZooKeeper的实现
- call和apply的区别和用法
- 集算器处理两个序表数据交叉
- Static 作用
- Python Spark大数据分析视频教程下载|PySpark教程
- 求三位数等于各位数的三次幂之和的数据
- CentOS静态IP配置
- 虚拟机包 OVF和OVA的区别
- 电商后台三大系统平台的功能设计
- 【XML】查看 XML 文件
- Linux强制用户下线
- 人工智能如何“看懂世界”