C语言笔记03_变量常量
这只是一篇新手个人学习笔记,其中不可避免出现理解不深不透,仅以督促自身及记录,如有错误,望批评指正!
一、初识变量常量
生活中的有些值是不变的(比如:圆周率,性别(?),身份证号码,血型等等)有些值是可变的(比如:年龄,体重,薪资)。
放在C语言中不变的数值,叫常量,变化的数值叫变量
int main()
{
//创建一个变量
int age = 22;
double weight = 63.5;
age = age+1;
weight = weight-10;
printf("%d\n",age);
printf("%lf\n",weight);
//浮点类型中 float用%f double用%lf
return 0;
}
变量
变量的分类
全局变量 - {}外部定义--全局变量的作用域为整个工程,整个工程都可以使用它,只是要方法得当
局部变量 - {}内部定义的--变量所在的局部范围
int a = 100; //全局变量 - {}外部定义的
int main()
{
int a = 10; //局部变量 - {}内部定义的
printf("%d\n", a);
return 0;
}
//结果为10 当局部变量和全部变量名字冲突的情况下,局部变量优先
当局部变量和全部变量名字冲突的情况下,局部变量优先
通常不建议把全局变量名字和局部变量名字设置为相同的
//求2个整数之和
int main()
{
int a = 0;
int b = 0;
int sum = 0;//定义一个
int a, b, sum = 0; //也可以写成这样
scanf("%d %d", &a, &b); //进行赋值
//取一个整数%d,存放在a;再取一个存放在b
sum = a + b;
printf("sum = %d\n", sum);
return 0;
}
变量的作用域和生命周期
作用域:作用域(scope)是程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效/可用 的 而限定这个名字的可用性的代码范围就是这个名字的作用域。
全局变量 - {}外部定义--全局变量的作用域为整个工程,整个工程都可以使用它,只是要方法得当
局部变量 - {}内部定义的--变量所在的局部范围
int main()
{
printf("HHHHHH\n");
int a = 6;
printf("a = %d\n", a); //那a的作用域就在{}57到65之间
return 0;
}
int g = 200; //写在{}外 于此为全局变量 适用于以下代码
printf("%d\n",g) //承接上面 这样的写法是错误的 执行性代码必须写到函数中
//extern int 声明变量
//在不同的源文件定义的变量在此源文件同样适用,只需要声明一下“告诉”它我有这个变量
生命周期:变量的创建和销毁之间的时间段
全局变量:全局变量的生命周期就是程序的生命周期
局部变量:进入局部范围生命周期开始,出局部范围,生命结束
常量
常量的分类
-
字面常量
int main()
{
3.14;
10;
"abcdef";
return 0;
}
-
const 修饰的常变量
int main()
{
/*3.14;
10;
"abcdef";
return 0;*/
const int num = 10;//num就是常变量 - 具有常属性(不能被改变的属性)
num = 20;
printf("num=%d\n", num);
}
-
define 定义的标识符常量
#define Max 20000;
int main()
{
int n = Max;
printf("num=%d\n", n);
return 0;
}
-
枚举常量