垃圾值的由来

1.我们声明1个局部变量,如果没有为这个局部变量初始化,那么这个局部变量中是有值的,这个值就是一个垃圾值,谁也不知道这个是个什么数值。

 

2.变量的回收

在大括弧执行完毕之后,定义在这个大括弧中的变量就会被系统回收。声明变量的时候,实际上就是找系统为你从高地址向低地址分配指定字节数的连续空间。比如声明一个int类型的变量(在内存中占4个字节,这个就不用再解释了吧,就是这么设计的),就会从高低地址向低地址分配4个字节的连续空间来存储声明的变量的值。

如何回收呢?

当变量回收的时候,其实就是告诉系统变量占用的字节不再使用了,可以分配给别的变量了。变量所占用的字节的数据是不会被清空的。

当再声明变量的时候,这个新变量有可能就是占用了刚刚被回收的那个变量的字节空间,那么这个时候,这个新变量中是有值的,值就是上次那个变量遗留下来的值,这就是垃圾值。

所以,当我们声明一个剧本变量的时候,最好是先为其初始化为0.

3.全局变量

全局变量声明出来以后,系统会自动将全局变量中的数据清零,所以全局变量的默认值为0,或初始化为0。

 

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值