static的作用以及实验
来源:互联网 发布:java创建socket服务端 编辑:程序博客网 时间:2024/06/02 02:47
1、静态局部变量
普通的局部变量在栈空间上分配,这个局部变量所在的函数被多次调用时,每次调用这个局部变量在栈上的位置都不一定相同。局部变量也可以在堆上动态分配,但是记得使用完这个堆空间后要释放之。
static局部变量中文名叫静态局部变量。它与普通的局部变量比起来有如下几个区别:
位置:静态局部变量被编译器放在全局存储区.data(注意:不在.bss段内,原因见3),所以它虽然是局部的,但是在程序的整个生命周期中存在。
访问权限:静态局部变量只能被其作用域内的变量或函数访问。也就是说虽然它会在程序的整个生命周期中存在,由于它是static的,它不能被其他的函数和源文件访问。
值:静态局部变量如果没有被用户初始化,则会被编译器自动赋值为0,以后每次调用静态局部变量的时候都用上次调用后的值。这个比较好理解,每次函数调用静态局部变量的时候都修改它然后离开,下次读的时候从全局存储区读出的静态局部变量就是上次修改后的值。
static的作用是保持变量内容的持久。存储在静态数据区的变量会在程序刚开始运行时就完成初始化,也是唯一的一次初始化。
1 #include <stdio.h> 2 void main() 3 { 4 while(1) 5 { 6 static int a=0; 7 printf("a=%d\n",a); 8 a=1; 9 sleep(10); 10 } 11 }~
运行结果!
阅读全文
0 0
- static的作用以及实验
- **static 的作用以及一些小细节**
- const和static的作用以及区别
- 匿名namespace的作用以及它与static的区别
- 匿名namespace的作用以及它与static的区别
- 关键字static和const的作用以及它们的区别
- const和static的作用辨析以及const和static的区别
- c++ static的作用,以及static对象在类和函数中区别
- c++ static的作用,以及static对象在类和函数中区别
- c++ static的作用,以及static对象在类和函数中区别
- c++ static的作用,以及static对象在类和函数中区别
- c++ static的作用,以及static对象在类和函数中区别
- c++ static的作用,以及static对象在类和函数中区别
- c++ static的作用,以及static对象在类和函数中区别
- 关键字static的作用
- static的作用
- static的作用
- static的作用
- PAT 1015. 德才论
- 跑一个基于密度的聚类算法:DBscan
- 网站性能测试指标:QPS、TPS、吞吐量、响应时间概述
- 【住建部BIM数据库】2017年BIM及智慧管理技术应用交流会在江苏召开
- Maven生成可以直接运行的jar包的多种方式
- static的作用以及实验
- 为什么Relu会导致死亡节点
- EhCache注解
- 设计模式知识连载(18)---单例模式:
- ubuntu14启用root登录
- Docker Compose
- Python中os和shutil模块实用方法集锦
- 测试设计-基于规格说明
- 108. Convert Sorted Array to Binary Search Tree