变量的存储类型

C语言的四种存储类型 auto(自动) register(寄存器)static(静态)extern(外部)

两种存储方式

静态存储:程序运行期间固定存储空间  

动态存储:程序运行期间动态分配存储空间

Static和wxtern属性的变量是放在静态存储区

auto放在动态存储区

register放在CPU的通用寄存器内

存储在动态内存区的变量如果没有初始化,则变量的值是随机的。而如果是静态区的变量,系统会自动初始化为0。 int类型是0,浮点型是0.0,char是‘\0’ 

static修饰之后,局部变量的值在函数调用结束后不会消失而是保留原值。静态局部变量只会被赋一次初值。

3关于寄存器变量

1只有局部自动变量和形式参数可以作为寄存器变量

2一个计算机系统的寄存器数目有限,不能定义多个寄存器变量

3静态局部变量不能定义为寄存器变量

4现在的编译器会自动将使用频繁的变量放在寄存器中,所以实际应用的时候register声明变量其实没必要。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值