如何理解C语言常量和变量
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何理解C语言常量和变量相关的知识,希望对你有一定的参考价值。
参考技术A 对于基本数据类型量,按其取值是否可改变又分为常量和变量两种。在程序执行过程中,其值不发生改变的量称为常量,其值可变的量称为变量。它们可与数据类型结合起来分类。例如,可分为整型常量、整型变量、浮点常量、字符常量、字符变量、枚举变量、枚举变量。在程序中,直接常量是可以不经说明而直接引用的,而符号常量和变量则必须先定义后使用。1、C语言常量和符号常量
在程序执行过程中,其值不发生改变的量称为常量。
1.1直接常量(字面常量):
整型常量:12、0、-3;
实型常量:4.6、-1.23;
字型常量:‘a’、‘b'。
1.2符号常量
标识符:用来标识变量名、符号常量名、函数名、数组名、类型名、文件名的有效字符序列。
符号常量:用标识符代表一个常量。在C语言中,可以用一个标识符来表示一个常量,称之为符号常量。
符号常量在使用之前必须先定义,其一般形式为:#define 标识符 常量其中#define也是一条预处理命令(预处理命令都以"#"开头),称为宏定义命令(在后面预处理程序中将进一步介绍),其功能是把该标识符定义为其后的常量值。一经定义,以后在程序中所有出现该标识符的地方均代之以该常量值。
习惯上符号常量的标识符用大写字母,变量标识符用小学字母,以示区别。
例3.1 符号常量的使用。
#define PRICE 30main()
int num,total;
num=10;
total=num*PRICE;
printf('total=%d",total);
用标识符代表一个变量,称为符号常量。
符号常量与变量不同,它的值在其作用域内不能改变,也不能再被赋值。
使用符号常量的好处是:含义清楚;能做到“一改全改”。
2、C语言变量
其值可以改变的量称为变量。一个变量应该有一个名字,在内存中占据一定的存储单元。变量定义必须放在变量使用之前。一般放在函数体的开头部分。要区分变量名和变量值是两个不同的概念。
C语言 变量 被赋值后如何转化成 常量???
你是不是想做这样的事情:int n=5;
int arr[n];
这是不可能的,初学者包括我当年也想这样干,但C语言不允许。
类似这样的问题,解决的方法,一是估计你可能需要的最大空间,比喻说,你估计可能需要最多1000个数组,那就以下子分配这么多的空间:
#define MaxVal 1000
int arr[MaxVal];
然后再配个一个变量纪录实际需要的个数。
另一种代替方法是动态分配,用malloc函数,关于这个自己查查资料吧 参考技术A c中没有常量变量,变量也不可能转化成常量。
变量被赋值以后,变量的内存空间所存储的内容发生改变。
当调用变量的时候,所使用的变量的值接成了被赋予的值了。 参考技术B 如果你想定义常量那么需要在外面定义一个静态的用#define定义。而变量只需要随你的类型定义就好。例如int啦 float啦只类的。
至于变量怎么转化成常量貌似还真不太明白。 参考技术C :……用const int x;就是变成了一个常量
以上是关于如何理解C语言常量和变量的主要内容,如果未能解决你的问题,请参考以下文章