栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C中的static、extern关键字

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C中的static、extern关键字

static

1、块内声明的static变量在程序执行期间驻留在同一存储单元内。和每次程序离开所在块就会丢失值得自动变量auto不同,static变量会无期限地保留值

2、块内得static变量只在程序执行前进行一次初始化,而auto变量则会在每次出现时都进行初始化(当然,假设他有初始化代码)。

3、每次函数被递归调用时,它都会获得一组新的auto变量,但是如果函数含有static变量,那么此函数得全部调用都可以共享这个static变量。

4、虽然函数不应该返回指向auto变量得指针,但是函数返回指向static变量得指针是没有问题的。

5、static经常用来做信息隐藏,static修饰的变量只对内部是公开可见的,而外部是无法访问的。

extern

1、extern声明中的变量始终具有静态存储期限,变量的作用域依赖于声明的位置,如果声明在块内部,那么变量具有块作用域;否则变量具有文件作用域。

2、extern修饰的变量只是对变量进行声明,而不是定义,他只是提示编译器需要访问定义在别处的变量。变量在程序中可以有多次声明,但是只能有一次定义。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/699273.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号