变量与常量

目录

一、变量

(一)变量的命名

1、只能由字母(包括大写或者小写),数字和下划线(_)组成。

2、不能以数字开头。

3、长度不能超过63个字符。

4、变量名中区分大小写。

5、变量名中不能使用关键字。

(二)变量的分类

1、局部变量:在main函数{}中的变量就是局部变量。

2、全局变量:在main函数{}外的就是全局变量。

(三)变量的作用域(什么是作用域?用通俗一点的话来解释就是一个变量能够在哪里起作用,哪里就是它的作用域。)

1、局部变量的作用域就是变量所在的局部范围。

2、全局变量的作用域是整个工程。

2、变量的生命周期:变量的创建——>变量的销毁

1、局部变量的生命周期:进入作用域生命周期开始,出作用域生命周期结束。

2、全局变量的生命周期:整个程序的生命周期。

二、常量

1、C语言的常量分为以下几类

(1)字面常量

(2)const修饰的常变量

(3)#define定义的标识符常量

(4)枚举常量


一、变量

变量就是变化的值,比如年龄,体重等等。

(一)变量的命名

1、只能由字母(包括大写或者小写),数字和下划线(_)组成。

2、不能以数字开头。

3、长度不能超过63个字符。

4、变量名中区分大小写。

5、变量名中不能使用关键字。

当然我们在给变量进行命名的时候最好是取一个有意义的名字。

(二)变量的分类

变量分为局部变量和全局变量。

简单来区分局部变量和全局变量就是

1、局部变量:在main函数{}中的变量就是局部变量。

2、全局变量:在main函数{}外的就是全局变量。

我们可以看下面这一段代码来理解一下。然后我们再来解释一下什么叫做局部优先(局部变量和全局变量相同时,局部变量优先)

#include<stdio.h>
int a = 2023;//全局变量
int main()
{
	int b = 2021;
	int a = 2018;//局部变量
	printf("%d\n",a);
	return 0;
}

 这段代码我们可以看到,我们打印的是变量a,但是我们观察代码会发现一个问题就是全局变量和局部变量都是a,但是它们的数值却不同,但是最终却打印出局部变量的数值,这就是上面我标红所说的局部优先。

(三)变量的作用域(什么是作用域?用通俗一点的话来解释就是一个变量能够在哪里起作用,哪里就是它的作用域。)

1、局部变量的作用域就是变量所在的局部范围。

2、全局变量的作用域是整个工程。

(那么怎么解释全局变量的作用域是整个工程呢?)

我前面在C语言入门的基础介绍过怎么去创建一个项目,那么其实这个项目就是整个工程。

我们可以看下面的代码和我放的运行截图

int c = 300;
#include<stdio.h>
extern int c;//这段代码是声明外部符号c
int a = 2023;
int main()
{
	int b = 2021;
	int a = 2018;
	printf("%d\n",c);
	return 0;
}

 我们可以看到,我定义的变量c是放在第一个.c文件里面,而完整的代码是放在第二个.c文件中,但是它们始终是在一个项目也就是一个工程里面。所以我只是在第二个.c文件的开头加了一段声明外部符号的代码,在第二个.c文件中却能打印出第一个.c文件变量c的值。这就说明了全局变量的作用域是整个工程。

2、变量的生命周期:变量的创建——>变量的销毁

1、局部变量的生命周期:进入作用域生命周期开始,出作用域生命周期结束。

2、全局变量的生命周期:整个程序的生命周期。

二、常量

常量就是不变的值,比如身份证号码,血型等等。

1、C语言的常量分为以下几类

(1)字面常量

(2)const修饰的常变量

(3)#define定义的标识符常量

(4)枚举常量

下面使用代码来举例理解

#include<stdio.h>
//枚举常量
enum Sex
{
	MALE,
	FEMALE,
    SECREAT
};
int main()
{
	//字面常量
	3.1415;
	200;
   //const修饰的常变量
	const float pai = 3.14f;//这里相当于将pai变成一个常量,但是只是语法上用const将它限制成这样,pai的本质上还是一个变量
	printf("%f\n", pai);
	//#define定义的标识符常量
    #define MAX 100
	printf("max=%d\n", MAX);
	//枚举常量演示,枚举常量默认是从0开始
	printf("%d\n", MALE);
	printf("%d\n", FEMALE);
	printf("%d\n", SECREAT);
	return 0;
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值