4. 变量、常量
变量 :
1. 变量定义和规则
double _C3 = 3.14; //变量可以用 字母、数字和下划线(_) 命名 //但是变量名不能以数字(1,2,..)开头 int a = 10; char A = '!'; //C语言中,变量名区分大小写 //另外: //1. 变量名的长度不能超过63个字符 //2. 变量名不能使用关键字
2. 局部变量和全局变量;作用域和生命周期
#include<stdio.h> int a = 100;//此为全局变量 int main() { { int a = 10;//此为局部变量 printf("%d\n",a); } return 0; }
“先为各位读者引入两张运行结果截图”
(一)全局变量:
(二)局部变量:
从(一)、(二)对比中,我们不难看出,
“当局部变量名与全局变量名相同时,局部变量优先”。
(三):
不知各位读者是否疑惑,为什么我们已定义的变量a 被编译器报错:“ “a”:未声明的表示符 ”?
这里需要为大家引入两个概念:作用域 和 生命周期
什么是“作用域”?
作用域是 一段代码中,一个名字的可用范围。
如,(三) 中 “a”的作用域:
{ int a = 10; }
换句话说,进入这个范围时,“a”被创建;而离开这个范围时,“a”被销毁 —— 生命周期
#include<stdio.h> int b = 20;//全局变量 int main() { int a = 10;//局部变量 return 0; } //局部变量的作用域: 局部变量所在的范围 //局部变量的生命周期: 进入作用域时,被创建;出作用域时,被销毁 //全局变量的作用域: 整个程序 //全局变量的生命周期: 整个程序的生命周期
3. 变量的使用
#include<stdio.h> int main() { int num1 = 0;//变量的初始化 int num2 = 0; scanf("%d %d",&num1,&num2); int sum = num1 + num2; printf("%d\n",sum); return 0; } //scanf为输入语句 //printf为输出语句
常量 :
常量的定义与变量有所区别,有以下几种形式:
1. 字面常量
#include<stdio.h> int main { 0; 1;//这些被称作 字面常量 return 0; }
2. const 修饰的常变量
#include<stdio.h> int main() { const int a = 10; //注意: //1. 被const修饰的 a 具有常属性,在语法层面上限制了a不可被修改 //2. a本质上还是个变量 return 0; }
3. define定义的标识符常量
#include<stdio.h> #define N 100 int main() { int a = N; // N 相当于我们给 100 取的一个名字 //我们使用 N 时,本质上是在使用 100 这个数 printf("%d\n",N); // 100 printf("%d\n",a); // 100 return 0; }
4. 枚举常量
#include<stdio.h> enum Sex { male, female, secret }; int main() { printf("%d\n", male); // 0 printf("%d\n", female); // 1 printf("%d\n", secret); // 2 //枚举常量默认从0开始,依次往后赋值 male = 3;//枚举常量不可被修改! return 0; }
本篇文章到此结束。如果读者朋友认可以上内容,不妨点个赞、关注一下!我将继续更新这些知识!