当前位置:首页 > 内存 > 正文

符号常量不占内存

  • 内存
  • 2024-09-06 06:30:00
  • 2741

一、C语言我是初学者整型符号常量使用符号来表示常量,有两种类型,一种是用#define定义的,另一种是用const固定的。
#definePI3
constintPI=3
以上两种是整数符号常量


二、字面常量和符号常量是什么?1、文字常量:包括整型常量、字符常量、字符串常量。注意:没有像数组常量和结构常量那样的结构常量。但还有结构符号常量
2、符号常量:(可以定义结构常量)常量是用#define和const来定义的!
这两个常量的区别:
#define定义的常量除了字符串常量外不占用内存,所以常量不能被寻址,只是宏替换,例如:
◆#defineNAME"pangdong";
摘要是字符串字面常量,会占用“常量存储区”;
二#defineMAX256;
摘要是整型字面量,不会占用“常量存储区”。分配内存。


三、C语言里,字符型常量占多大内存空间?

在C语言中,字符char变量对应的是ASCII(AmericanStandardCodeforInformationInterchange,美国信息交换标准代码)。ASCII码的范围是0-126(十进制)。用一个字节来表示。因此,字符char变量占用1个字节。

C语言中的常量一般分为两类:整型常量和浮点型常量。整型常量的默认数据类型是int类型(即无符号整数类型,占用四个字节)。字符常量不是浮点常量,而是int类型。因此,字符char常量占用四个字节。

扩展信息:

用单个撇号括起来的字符是字符常量。例如,‘a’、‘#’、‘%’、‘d’都是合法的字符常量,在内存中占用一个字节。仅包含一个字符的字符常量(例如“ab”)是无效的。字符常量区分大小写,例如,'a'和'a'是两个不同的字符常量。

C语言允许将字符值赋给整型变量,也允许将整型值赋给字符变量。输出时,允许将字符变量作为整数量输出,也允许将整数变量作为字符量输出。整数量为两字节量,字符量为单字节量。当整数量作为字符量处理时,只有低八位组参与处理。


四、C语音中的符号常量的定义方法是什么?

符号常量是使用#define定义的。

符号常量在使用前必须定义:

形式为:#define标识符常量

例如:#definePI3.14                   。没有分号

#define是预编译命令(预处理命令都是以“#”开头),称为宏定义命令,它只在预编译时进行字符替换。符号常量不占用内存,只是临时符号。预编译后该符号不再存在,因此无法将新值赋给符号常量。习惯上用大写字母作为符号常量的标识符,用小写字母作为变量标识符来区分。