C语言中变量内存问题

请问在函数中申明一个变量而不去使用这个变量,变量会占用内存空间吗?系统会给他一个地址吗?... 请问在函数中申明一个变量而不去使用这个变量,变量会占用内存空间吗?系统会给他一个地址吗? 展开
 我来答
金色潜鸟
2013-05-02 · TA获得超过3.2万个赞
知道大有可为答主
回答量:1.3万
采纳率:89%
帮助的人:5713万
展开全部
(1)在函数中申明的变量,是局部量。
(2)函数没有被调用时,不给局部量分配空间。此时不占用内存空间。
(3)函数 局部量的生命周期是从调用开始到调用结束。
只有在调用函数时,才临时分配空间,函数调用并执行完毕时,空间就会被释放。
函数调用和执行中,无论是否使用此变量,它都要占用内存空间,有地址。
(4)更精确地说,同变量所在的域(就是一对花括号之间的区域)有关,生命周期从进域开始到出域结束。
weaselpp
2013-05-02 · TA获得超过612个赞
知道小有建树答主
回答量:381
采纳率:33%
帮助的人:331万
展开全部
如果你是想这样int abc;在函数里面申明的,是不会占用堆空间的,但是会占用栈空间,你可以这样理解,当程序执行到这个函数的时候,abc占用了内存,当程序退出这个函数的时候,就会自动释放这个内存.
程序使用栈空间的内存是相当高效的,所以,一般小内存,都建议使用栈空间.
如果你想详细地了解堆,栈内存,请自己百度一下.上面有详细的说明.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hhx00123
2013-05-02
知道答主
回答量:18
采纳率:0%
帮助的人:17.2万
展开全部
声明就是让系统给他分配内存,要不声明还有什么用?当然分不分配还要看程序是否读到这条声明语句(一般来说就是调用所在的函数),读不到那自然没作用!这也说明了为什么变量要先声明后使用,否则的话,程序就会因内存分配不足而出错!以后会学到函数的声明也是一样的!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
feidky
2013-05-02
知道答主
回答量:10
采纳率:0%
帮助的人:10.4万
展开全部
这个需要看编译器处理情况,一般情况下是会占用内存以及会给一个地址的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式