static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?


Posted in 面试题 onFebruary 22, 2015
全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量。全局变量本身就是静态存储方式, 静态全局变量当然也是静态存储方式。 这两者在存储方式上并无不同。这两者的区别虽在于非静态全局变量的作用域是整个源程序, 当一个源程序由多个源文件组成时,非静态的全局变量在各个源文件中都是有效的。 而静态全局变量则限制了其作用域, 即只在定义该变量的源文件内有效, 在同一源程序的其它源文件中不能使用它。由于静态全局变量的作用域局限于一个源文件内,只能为该源文件内的函数公用, 因此可以避免在其它源文件中引起错误。
从以上分析可以看出, 把局部变量改变为静态变量后是改变了它的存储方式即改变了它的生存期。把全局变量改变为静态变量后是改变了它的作用域, 限制了它的使用范围。
static函数与普通函数作用域不同。仅在本文件。只在当前源文件中使用的函数应该说明为内部函数(static),内部函数应该在当前源文件中说明和定义。对于可在当前源文件以外使用的函数,应该在一个头文件中说明,要使用这些函数的源文件要包含这个头文件
static全局变量与普通的全局变量有什么区别:static全局变量只初使化一次,防止在其他文件单元中被引用;
static局部变量和普通局部变量有什么区别:static局部变量只被初始化一次,下一次依据上一次结果值;
static函数与普通函数有什么区别:static函数在内存中只有一份,普通函数在每个被调用中维持一份拷贝

Tags in this post...

面试题 相关文章推荐
解释一下抽象方法和抽象类
Aug 27 面试题
托管代码(Managed Code)和非托管代码(Unmanaged Code)有什么区别
Sep 29 面试题
shell程序中如何注释
Jan 28 面试题
介绍一下grep命令的使用
Jun 12 面试题
EJB发布WEB服务一般步骤
Oct 31 面试题
remote接口和home接口主要作用
May 15 面试题
Prototype是怎么扩展DOM的
Oct 01 面试题
我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串?
Mar 30 面试题
用JAVA实现一种排序,JAVA类实现序列化的方法(二种)
Apr 23 面试题
25道Java面试题集合
May 21 面试题
介绍一些UNIX常用简单命令
Nov 11 面试题
程序员经常用到的UNIX命令
Apr 13 面试题
介绍一下#error预处理
Sep 25 #面试题
const char*, char const*, char*const的区别是什么
Jul 09 #面试题
雅虎笔试题(字符串操作)
Mar 24 #面试题
枚举与#define宏的区别
Apr 30 #面试题
一家外企的面试题目(C/C++面试题,C语言面试题)
Mar 24 #面试题
下面这个程序执行后会有什么错误或者效果
Nov 03 #面试题
struct与class的区别
Feb 03 #面试题
You might like
模仿OSO的论坛(四)
2006/10/09 PHP
详解PHP执行定时任务的实现思路
2015/12/21 PHP
解析jQuery的三种bind/One/Live事件绑定使用方法
2013/12/30 Javascript
JavaScript调用ajax获取文本文件内容实现代码
2014/03/28 Javascript
css如何让浮动元素水平居中
2015/08/07 Javascript
JavaScript中的splice方法用法详解
2016/07/20 Javascript
AngularJS动态生成div的ID源码解析
2016/08/29 Javascript
Vue.js组件tabs实现选项卡切换效果
2016/12/01 Javascript
javascript中json基础知识详解
2017/01/19 Javascript
javascript实现滑动解锁功能
2017/03/22 Javascript
详解如何将angular-ui的图片轮播组件封装成一个指令
2017/05/09 Javascript
vue 实现 tomato timer(蕃茄钟)实例讲解
2017/07/24 Javascript
Node.js  REPL (交互式解释器)实例详解
2017/08/06 Javascript
VUE实现可随意拖动的弹窗组件
2018/09/25 Javascript
JS实现数组删除指定元素功能示例
2019/06/05 Javascript
关于layui表单中按钮自动提交的解决方法
2019/09/09 Javascript
关于JavaScript数组去重的一些理解汇总
2020/09/10 Javascript
[01:25]DOTA2自定义游戏灵园鬼域等你踏足
2015/10/30 DOTA
[00:49]完美世界DOTA2联赛10月28日开团时刻:随便打
2020/10/29 DOTA
python聊天程序实例代码分享
2013/11/18 Python
Django之使用celery和NGINX生成静态页面实现性能优化
2019/10/08 Python
python根据文本生成词云图代码实例
2019/11/15 Python
python函数enumerate,operator和Counter使用技巧实例小结
2020/02/22 Python
Python GUI库PyQt5图形和特效样式QSS介绍
2020/02/25 Python
解决tensorflow/keras时出现数组维度不匹配问题
2020/06/29 Python
python集合的新增元素方法整理
2020/12/07 Python
python用opencv 图像傅里叶变换
2021/01/04 Python
临床医学专业个人的自我评价
2013/09/27 职场文书
暑期社会实践学生的自我评价
2014/01/09 职场文书
法学个人求职信范文
2014/01/27 职场文书
新闻学专业个人求职信写作
2014/02/04 职场文书
维修工先进事迹
2014/05/29 职场文书
村党支部书记个人对照材料汇报
2014/10/26 职场文书
压缩Redis里的字符串大对象操作
2021/06/23 Redis
python机器学习创建基于规则聊天机器人过程示例详解
2021/11/02 Python
python人工智能human learn绘图可创建机器学习模型
2021/11/23 Python