前言
你好,C语言!(常量)
一、常量是什么?
常量就是不变的量。
二、常量的类型
1.字面常量
2.const修饰的“变”量
3.#define定义的常量
4.枚举常量
三、常量详解
1.字面常量:
字面常量就是我们一眼可以看出来它是常量的量。
比如说:1 2 3 4 5。
2.const修饰的“变”量
const是C语言规定的关键字,代表常属性。
但是被它修饰的变量叫做常变量,为什么常后面还要跟一个变量呢?
经过const修饰后的变量,变成了一个无法修改的盒子,盒子里的内容已经和盒子锁定。
在程序中,const修饰的变量是具有常量属性的变量,它的值是不可以被改变的。
这一点我们可以用数组来验证。
#include<stdio.h>
int main()
{
const int n=10;
int a[n] ={1,2,3,4,5,6,7,8,9,10};
int i=0;
for(i=0;i<n;i++)
{
printf("%d",a[i]);//循环输出数组a的值
}
return 0;
}
我们可以看到,编译器进行了报错,说明const所修饰的常量已经不是一个常量了,而变成了常变量。
3.#define 定义的常量
#define是编译器的预编译指令,在C语言中,允许通过一个标识符来定义一段字符串。
而抛去“#”,define是宏定义命令。
我们可以把define就看做一个简单的文本替换,即如果在程序中看到define后面的标识符,那么就自动替换为define定义的字符串,用代码来说明吧。
#include<stdio.h>
int main()
{
#define A 100
int F=0;
F=A;
printf("%d",F);
return 0;
}
这里的A就相当于100
我们在这个程序中看到的所有A都等价于100.
4.枚举常量(enum)
说起枚举,它就是依次自增1.
比如说:从0开始,输出的是0 1 2 3 .....
那么我们从字面意思上来看枚举常量也是这样的。
枚举常量可以定义一个初值,然后从初值一直自增1至我们规定停止的那个值。
还是用代码来说明:
#include<stdio.h>
int main()
{
enum NAME
{
UP,
DROP
};
printf("%d",UP);
return 0;
}
从代码来看很清晰地就会知道,枚举常量中的每个量都是带值的,只不过这个值默认是从0开始,我们也可以自己定义,只需要将此程序中的UP 改成UP=3(你想让它从哪开始的那个值)。
枚举常量的定义方式:
enum //类型名称
{
//取值名称
};//分号别忘记
//比如
enum WEEKDAY
{
MON,
TUE,
WED,
THU,
FRI,
SAT,
SUN
};
这里的WEEKDAY的默认类型是整型,由此可知,enum定义的类型默认是整型。
感谢你看到这里,我是一名计算机专业在读的大学生,刚刚踏进C语言的世界,博文难免会有纰漏,希望大家可以指正。