为了账号安全,请及时绑定邮箱和手机立即绑定

定义变量时是如何分配它的存储器单元地址的?

定义变量时是如何分配它的存储器单元地址的?

KmiY 2015-12-21 15:37:51
如题,他们是随机分配的,还是遵循一定的原则?假如他们时遵循原则的,那么比如:我在主函数main中定义一个变量 int arr;又在子函数boy中定义一个变量 int arr; 由相关知识我们可以知道,arr具有表示该变量存储地址的含义,又在编译器中这样的定义时许可的,那么又为什么不会存在函数的覆盖的情况?再假设他们是随机分配的,那么我想这样也很可能存再覆盖造成的出错的情况。//换句话来说,我想问一下,定义变量时对存储空间的申请是如何进行的?谢谢~
查看完整描述

2 回答

已采纳
?
努力提升

TA贡献65条经验 获得超15个赞

首先2个函数的内存空间是不一样的,就像2个不同箱子

虽然2个变量名是相同的但保存的地方不一样,所以不会造成覆盖。

具体的底层实现你可以去找找相关的文档。

查看完整回答
反对 回复 2015-12-21
?
qq_追梦_26

TA贡献15条经验 获得超2个赞

这些知识涉及到了操作系统的内存管理方面的知识了,如果说的话很多,百度C语言内存分配看看

查看完整回答
反对 回复 2015-12-22
  • 2 回答
  • 0 关注
  • 1931 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信