一、变量与常量
1、变量
1.什么是变量?
没有固定的值,可以改变的量。
2.如何创建变量?
类型 变量名 = 变量值
3.变量分类:
3.1局部变量:在一个函数内部或复合语句内部定义的变量,位于大括号内部;
3.2全局变量:可以被本程序所有对象或函数引用,位于大括号外部;
注:局部变量与全局变量名字冲突的情况下,局部优先。
2、常量
1.什么是常量?
有固定值,不变化的量;
2.常量分类:
2.1字面常量;
2.2const修饰的常变量,具有常量属性,不可被改变,但其本质是变量;
2.3#define定义的表示符常量;
2.4enum枚举常量,可以一一列举的常量。
#define MAX 10000 #include <stdio.h> enum Sex { //这种枚举类型的变量未来可能取值 //枚举常量 MALE, FEMALE, SECRET }; int main() { //枚举常量,可以被一一列举的常量 enum Sex s = MALE; printf("MALE=%d\n", MALE); printf("FEMALE=%d\n", FEMALE); printf("SECRET=%d\n", SECRET); //字面常量 /*3.1415; 10; 'a'; "asdc";*/ //const修饰的常变量,常变量本质是变量。具有常量属性,不可被改变。 /*const int num = 10; printf("num=%d", num);*/ //#define定义的表示符常量 /*int n = MAX; printf("n=%d", n);*/ return 0; }
二、作用域与生命周期
1、作用域
1.什么是作用域?
一段程序代码中所用到的变量、函数等并不总是有效、可用的,而限定变量、函数等可用性的代码范围就是作用域。
2.作用域的功能
提高程序逻辑的局部性,增强程序的可靠性,减少名字冲突。
3.局部变量与全局变量的作用域
局部变量:变量所在的局部范围;
全局变量:整个工程;
注:局部变量与全局变量名字冲突的情况下,局部优先。
2、生命周期
1.什么是生命周期?
一个对象从创建到销毁之间的过程,变量的生命周期即为其创建到销毁的过程;
2.局部变量的生命周期
从进入局部范围生命开始,到出局部范围生命结束。
3.全局变量的生命周期
一个程序的生命周期即为这个程序全局变量的生命周期。
三、字符串与转义字符
1、字符串
字符串是用双引号括起来的一串字符,每一个字符串的结尾都隐藏了一个
\0
字符。注:
\0
字符的作用是表示该字符串已经结束。
int main() { char arr1[] = "abc"; char arr2[] = { 'a', 'b', 'c'}; char arr3[] = { 'a', 'b', 'c', '\0'}; //打印字符串,证明字符串结尾隐藏了一个\0 printf("arr1:%s\n", arr1); printf("arr2:%s\n", arr2); printf("arr3:%s\n", arr3); //求字符串长度 printf("arr1_len:%d\n", strlen(arr1));//结果为3 printf("arr2_len:%d\n", strlen(arr2));//结果是一个随机值 int len = strlen("abc"); //printf("len:%d\n", len); return 0; }
2、转义字符
转义字符的作用是转变字符原有意思。
常见的转义字符使用
ps:学习链接
https://www.bilibili.com/video/BV1cq4y1U7sg?p=1&vd_source=54ada085617a73e9210ec0c3d350a538