int a【1】和int a两个变量占用的内存一样大吗?处理效率哪个更高?

 我来答
By_zlf
2018-06-22 · 超过47用户采纳过TA的回答
知道小有建树答主
回答量:60
采纳率:50%
帮助的人:51万
展开全部
数据结构来看,两个变量占用的内存一样大,都是4Byte(有些编译器是2Byte,即16位)。int数组只是连续的int数据结构,与单个int结构的存储没有区别。
处理效率:
数组元素的寻址是首先找到数组a的地址(也是数组首元素的地址),再根据数组下标对各元素寻址。而单个变量寻址是直接找到该变量地址,即&a。所以从使用上来看,单元素数组和单个变量的效率一致,都只需要寻址一次。
如果是传参,那显然传递地址的效率会比内存拷贝更高。所以传参时,a[1]的效率比a更高。
合诗柳74
2018-06-22
知道答主
回答量:31
采纳率:50%
帮助的人:5.3万
展开全部
如果只是一个数的话,没必要用数组
追问
我就是打个比方,实际应用中都比这个复杂些
追答
相同环境中,占用内存是一样的,数组在内存中开辟的空间是连续的,方便多个数据时使用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
DoramiHe
2018-06-22 · 知道合伙人互联网行家
DoramiHe
知道合伙人互联网行家
采纳数:25336 获赞数:59546
2011年中山职业技术学院毕业,现担任毅衣公司京东小二

向TA提问 私信TA
展开全部
不同的编译系统为INT变量开辟的内存单元大小不同,VC6.0为INT变量开辟4个字节(32个二进制位)的内存单元,并按整形数的存储方式存放数据,允许的数值范围是-2147483648~2147483647。我不知你的是什么编译系统,那么若有int a;变量a占用内存的2个字节,则a的数值范围为-32768~32767,应选C:-32768 。
祝你早日成为VC高手啊~~!
追问
keil uvision4
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式