每日n叹 2022-12-21 09:22 采纳率: 100%
浏览 41
已结题

关于生存期的问题,为什么数组下标越界了输出的却不是垃圾数据呢

大家可以打一下这段代码输出,看一下是什么结果,并且分析一下为什么会是这样吗?
在逐步调试监视窗口里面监视一下,你会发现一个很神奇的问题,哪位能帮忙解释一下吗?感谢

img

img

img

img

img

img

  • 写回答

3条回答 默认 最新

  • 於黾 2022-12-21 09:33
    关注

    你管负的好几千万叫不是垃圾数据,那它是什么呢
    你的数组是在函数里面定义的,函数结束了它的生命周期也到了,它的内存就被回收了,里面不知道被谁给占了,所以数据全都错乱了
    当然也不是说一个字节不剩的都错乱,偶尔运气好有几个没有被占就还是原来的数,但是你不能期待每次都运气好,而且每次到底哪些没被占也不确定,所以这些不确定的数整个都是垃圾数据
    就像厨余垃圾里面,苹果皮混合着吃剩的肉,但是你没法分离它们,就只能一起丢掉

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 12月29日
  • 已采纳回答 12月21日
  • 创建了问题 12月21日

悬赏问题

  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 组策略中的计算机配置策略无法下发
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)