内存模型和名称空间

静态变量可具有三种链接性:

1)外部链接性:可在其他文件中访问,

2)内链接性:只能在当前文件中访问

3)无链接性:只能在当前函数和代码块中访问

编译器将分配固定的内存块来存储所有的静态变量,这些变量在整个程序执行过程中一直存在。

另外,如果没有显示的初始化静态变量,编译器将把它设为0,在默认情况下,静态数组和结构将每个元素或成员变量的所有位都设置为0;

定义方式:

1)外:必须在代码块的外面声明它,可使用external修饰也可省略;

2)内:必须在代码块的外边声明它,并且使用static限定符

3)无:必须在代码块内部声明,并使用static修饰。

在多文件程序中,可以在一个文件中(且只能在一个文件中 )定义一个外部变量。使用该变量的其他文件必须使用关键字extern声明它。

静态的局部变量,该变量只在该代码块中可用,但他在改代码块不处于活动状态下依然存在,另外如果初始化了静态局部变量,则只在启动时进行一次

初始化,以后再调用函数时不会像自动变量那样初始化。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值