C语言中,常量占内存空间吗?请高手指教

 我来答
jari_qian
2010-11-29 · TA获得超过188个赞
知道小有建树答主
回答量:267
采纳率:100%
帮助的人:164万
展开全部
常量分几种情况:1、用#define定义的宏,此时其实它是立即数,在编译的时候,会直接写入程序不会占空间
2、用定义一个变量存储了一个常数(其实这时候是一个变量了,要占RAM空间的);
3、定义在ROM中,如“__ROM"来声明,这时候就占ROM,而不是RAM,我们所说的内存指RAM,所以不占内存。
百度网友c9d369a
推荐于2017-09-17 · TA获得超过327个赞
知道小有建树答主
回答量:214
采纳率:0%
帮助的人:133万
展开全部
常量是一个命名的数据项,在整个操作过程中其值保持不变。如PI值,即3.1415926535是数值型常量。 VFP定义了如下类型的常量:

数值型常量,如:20,16,100,1

字符型常量,用单引号或双引号括起来的字符串,如:"ABCD"

逻辑型常量,只有两种:.T.和.F.

日期型常量和日期时间型常量,如:{^1999-04-22},{^1999-04-24 10:00am}

关键的是,常量和变量是放在不同的"段"(section)里,程序一旦加载,常量/变量自然都在内存里了。

常量和全程变量,通常放在初始化段;局部变量,通常在栈里;

还有一种情况,比如汇编里的立即数(mov ax, 12),它是直接放在指令里的,也即是代码段里.

由上面,我们可以知道,常量是在程序加载的时候,一起加载到内存中去的,这个时候是要占用内存资源的。。。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
没话——c2294
2010-11-29 · TA获得超过109个赞
知道答主
回答量:44
采纳率:0%
帮助的人:32.6万
展开全部
是要占的,就像你平常定义变量,如果不赋值为0,输出的不一定是0一样;是占的...
(ps:我们老师说的)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
秀潇逢6992
2010-11-29 · TA获得超过170个赞
知道答主
回答量:116
采纳率:0%
帮助的人:99.8万
展开全部
不占,个人观点
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2010-11-29
展开全部
都要占
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式