c语言学习(什么是常量)

常量:

c语言中的常量分为以下几种:

字符常量

const修饰的常变量

#define定义的标识符常量

枚举常量

1,字面常量

写出来后不会变动的,就是字面常量

#define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
	3, 14;
	10;
	'a';
	"abcdef";
	return 0; 
}

   分别为

     3, 14;浮点型常量
    10;整型常量
    'a';字符常量
    "abcdef";字符串常量

   2,const修饰的常变量

假如我们创建一个int num=10;,因为它是变量当我们num=20;时打印出来就是20

 而当我们在前面加一个const后,程序就会报错,这是因为这个值不能被修改,在使用的时候需要将num=20;删除

 num是常变量——具有常属性(不能被改变的属性)

虽然它具有常属性,但是仍然是一个变量,所以称之为常变量

我们来看一下它的变量属性

先创建一个数组,用const修饰int n但是由于它的本质是常量所以在运行过程中就出现了错误

#define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{	
	int arr[10] = { 0 };
	const int n = 10;
	int arr[n] = { 0 };
	return 0;
}

注意:

const static或者全局const变量才存放在常量区,其他存在栈上,是个伪常量,可以通过指针改变常量的值

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

假如我们创建一个#define定义的标识符常量,打印出来的就是2000(#define也可以定义在里面,只要定义在printf之前就行)

为什么#define定义是一个常量,因为max无法改变,假如我们创建一个max=1000;程序就会报错

 

4, 枚举常量

可以一一列举的常量

enum为枚举关键词,male,female,secret为这种枚举类型的变量未来可能的取值

enum sex
{
	male,
	female,
	secret
};

假如我们创建一个enum sex s=male;它的可能取值就只能是上述几个 

#define  _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
enum sex//枚举关键字
{
	male,
	female,
	secret
};
int main()
{	
	enum sex s = male;
	return 0;
}

而它为什么是枚举常量

因为它也有自己的值,值默认从0开始

但我们将male=3,这是赋初值,改变开始时候的量,但是不能在主函数内使male=3,这样程序就会出错 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一起慢慢变强

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值