变量、常量
1 概念
- 变量:可以变化的值,c语言中用变量表示。例如:年龄、体重、薪资等。
- 常量:不变的值,c语言中用常量的概念表示。例如:圆周率、血型🅰️、身份证号🆔等。
2 变量
- 定义变量的方法
类型 变量名=初始值;
例: int age=18;
char ch=‘w’;
float weight=50; - 变量的类型
(1)局部变量:main函数内部定义的变量
(即{}内部定义的变量)
(2)全局变量:main函数外部定义的变量
(即{}外部定义的变量)
例:
#include<stdio.h>
int a=10;//全局变量
int main ()
{
int a=20;//局部变量
printf(“a=%d\n”,a);
return 0;
}
编译运行结果:a=20
『注意⚠️』当局部变量和全局变量同名的时候,局部变量优先使用;不建议把局部变量和全局变量写同名。
3 变量的使用
1.变量的功能是存储数据,每个变量都有其类型,类型决定了变量存储的大小和布局。
2.使用方式:声明变量(和内存打招呼)——>赋值(将数据放到内存存储空间)——>使用(根据变量名获取内存中所存储的数据)
3.举例
#include<stdio.h>
int main ()
{
int num1 = 0;
int num2 = 0;
int sum = 0;
scanf("%d %d", &num1, &num2);
sum = num1 + num2;
printf(“sum = %d\n”, sum);
return 0;
}
4 变量的作用域和生命周期
1.作用域(scope):通常来说,一段程序代码中所用到的名字并总是有效或可用的,而限定这个名字可用性的代码范围就是这个名字的作用域。作用域的使用提高了程序逻辑的局部性,增强程序的可靠性,减少名字冲突。
2.局部变量的作用域是:变量所在的局部范围。
全局变量的作用域是:整个工程。
3.生命周期:变量的创建到变量的销毁之间的一个时间段
4.局部变量的生命周期是:进入作用域,生命周期开始;出了作用域,生命周期结束。
全局变量的生命周期是:整个程序的生命周期。
5 常量
1.常量的分类:字面常量、const修饰的常量、#define定义的常量、枚举常量
2.举例说明
//字面常量
#include<stdio.h>
int main ()
{
int a = 100;//字面直接能看到的值,通常用来赋值
char ch = ‘c’;
return 0;
}
//const修饰的常变量
#include<stdio.h>
int main ()
{
const float pai = 3.14;
pai = 5;//本身pai是变量,被const修饰后,pai具有了常属性,不能直接被修改,但本质依然是变量
//#define定义的标识符
#include<stdio.h>
#define MAX 100
int main ()
{
int m = MAX;
printf("%d\n", m);
printf("%d\n", MAX);
return 0;
}
//枚举常量
enum sex//enum是枚举关键字
{
male,//枚举常量
female,//枚举常量
secret//枚举常量
};
printf("%d\n", male);
printf("%d\n", female);
printf("%d\n", secret);
//枚举常量默认是从零开始,依次向下递增1