腐鱼 2021-08-19 10:06 采纳率: 57.1%
浏览 86
已结题

C语言无名变量的内存空间问题

img

img

为什么第2行和第4行的结果一样

  • 写回答

1条回答 默认 最新

  • 八云黧 2021-08-19 10:19
    关注

    这个教材真是。。。还无名变量,真会起名
    算了,说结论,就是指针变量没改变,值自然一样,你调用malloc分配内存空间,然后返回给你一个指向你需要的特定大小空间的指针,你可以对这个指针指向的空间赋值,当你用完了这块空间,free掉了,这个空间就被回收干别的用去了,这个时候你的指针变量还是指向这个地址,但地址的内容已经没有意义了,可能系统还没用重新使用这块空间,原来的数据还在,也可能这块空间被重新分配参与别的变量使用了,这样你打印的值就不确定了。
    但是指针变量存的是地址,你不修改这个变量它的值自然还是那个地址

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 8月27日
  • 已采纳回答 8月19日
  • 创建了问题 8月19日