一 常量的概念及理解

1.什么叫常量?

   ·首先常量是指一些不变的量,比如我们的血型,性别,身份证号码等等

二 C语言中常量的分类有以下几种:

1.字面常量

代码举例:

int main()//主函数
{
int num=4;//定义的变量
3;//字面常量
return 0;//返回值
}

  ·总结:因此,可以看出字面常量就是从字面上理解就是一个常量,是直接给出的,不会变的。

2.const修饰的常变量

代码举例:

<1>这个代码中没有用到const函数

#include <stdio.h>
int main()
{
int num=4;
printf("%d\n",num);
num=8;
printf("%d\n",num);
return 0;
}

可以看到这个程序的运行结果如图所示:

C语言中的常量_字面常量

<2>与<1>中的代码进行比较,加了const修饰

#include <stdio.h>//因为用到库函数所以要注明
int main()
{
const int num=4;
pritnf("%d\n",num);
num=8;
printf("%d\n",num);
return 0;
}

结果显示:

 E:\C2\Text2.c(6) : error C2166: l-value specifies const object,是错误的。其原因在于加了const之后num本身是不能修改的,因此num具有了常属性,但是它本身还是属于变量的,因此叫常变量

3.#define定义的标识符常量

代码举例:

#include <stdio.h>
#define MIN 9//#define 定义标识符常量
int main()
{
int arr[MIN]={0};//创建数组arr,数组中元素由MIN个且都为整形,初始化
printf("%d\n",MIN);//输出
return 0;//返回值
}

其结果显示为:

C语言中的常量_c语言_02

程序能成功运行进而也说明了MIN是常量

4.枚举常量

代码举例:

#include <stdio.h>
enum Sex//enum是枚举关键字
{
//列出所有的枚举可能值
FEMALE,
MALE
}
int main()
{
printf("%d\n",FAMALE);
printf("%d\n",MALE);
return 0;//返回值
}

其结果显示为:

C语言中的常量_字面常量_03

  ·总结:由结果我们可以知道,每个常量都是有一个不可改变的值。值得注意的是,通过枚举所列出来的可能值是不能改变的,因为他们的值是固定的,如果将他们重新赋值,会编译出错(即:MALE=6;这是错误的),但是通过枚举类型所创建的变量是可以改变的(即:enum Sex sex=secret;是可以的




以上是关于C语言中有关常量的内容,C语言正在学习,欢迎指正补充,谢谢!!