一、转义字符
什么是转义字符呢?简单来说就是把一个字符原有的意义转变了,让它具有别的意义,这就是转义字符,比如字符’n’如下所示
1.1 转义之前
// %c占位符,用来打印字符。
#include<stdio.h>
int main()
{
printf("%c",'n');
return 0;
}
结果显示
此时它只是一个普通的字符’n’。
1.2 转义之后
// %c占位符,用来打印字符。
#include<stdio.h>
int main()
{
printf("%c",'\n');
return 0;
}
结果显示
- 第一个箭头所指是打印出来的,由于字符’\n’这个ASCll编码是10,在屏幕上无法显示出来让我们观察。
- 第二个箭头所指的是转义之后的,此时它改变了原有的意义,具有了换行功能。
1.3 转义字符图表
PS、 \0 :NULL 字符,代表没有内容, \0 就是 \ddd 这类转义字符的⼀种,默认后面跟一位或两位最多三位。⽤于字符串的结束标志,其ASCII码值是0。
二、变量的创建与使用
什么是变量呢?在生活中有许多可变的量,比如:年龄、身高、体重、学习成绩等,而在c语言中也是一样的道理。我们知道在计算机中有内存,而变量就是向内存申请一块空间用来存放数据,具体如下图所示
2.1 变量的创建
char c; // 创建一个变量名为c的字符型变量
short s; // 创建一个变量名为s的短整型变量
int d; // 创建一个变量名为d的整型变量
long l; // 创建一个变量名为l的长整型变量
long long ll; // 创建一个变量名为ll的更长的长整型变量
float f; // 创建一个变量名为f的单精度浮点型变量
double ff; // 创建一个变量名为ff的双精度浮点型变量
long double lf; // 创建一个变量名为lf的更长的双精度浮点型变量
#include<stdbool.h>
_Bool b; // 创建一个变量名为b的布尔型变量
int k = 10; //变量初始化
k = 20; //变量的赋值
PS、 变量名尽量要有意义,并且变量名只能由字母、数字、下划线组成,不能以数字开头。
2.2变量的分类
变量可分为全局变量和局部变量,什么是全局变量,顾名思义就是在整个项目中都可以使用的变量,而局部变量只能使用在当前的作用范围中,如下所示
2.2.1 全局变量
#include<stdio.h>
int d = 10; //全局变量
int main()
{
printf("d = %d\n",d); // 全局变量可以在这使用
{
printf("d2 = %d\n",d); // 全局变量也可以在这使用
}
return 0;
}
结果显示
2.2.2 局部变量
#include<stdio.h>
int main()
{
{
int k = 10; //局部变量
printf("k = %d\n",k); //局部变量可以在这使用,因为它的作用范围只限制在当前的花括号之内
}
pritnf("k2 = %d",k); //局部变量在这不可使用
return 0;
}
结果显示
PS、 当全局变量和局部变量的变量名相同时,局部变量优先。
2.2.3全局变量和局部变量在哪存储?
一般来说,在我们学习c\c++的时候,我们会关注内存中的三个区域:栈区、堆区、静态区。
- 局部变量存储在栈区
- 全局变量存储在静态区
- 堆区是⽤来动态内存管理的
三、 算数操作符
在平时的写代码中,可能会涉及到计算,c语言提供了一系列操作符,其中一组是算数操作符。分别是:+、-、*、/、%、这些操作符都属于双目操作符,操作符也叫运算符,两边的数字叫做操作数,如下所示
#include<stdio.h>
int main()
{
int a = 10;
int b = 5;
printf("a + b = %d\n",a+b);
printf("a - b = %d\n",a-b);
printf("a * b = %d\n",a*b);
printf("a / b = %d\n",a/b);
printf("a % b = %d\n",a%b); //求余运算符两边的操作数只能是整型
return 0;
}
3.1 负数求模的规则是,结果的正负号由第⼀个运算数的正负号决定。
#include<stdio.h>
int main()
{
printf("%d\n", 10%3); // 1
printf("%d\n",-10%-3); // -1
printf("%d\n",-10%3); // -1
return 0;
}
PS、如果希望得到的结果是小数,那么两边的操作数至少有一个是浮点数,这时C语言就会进行小数除法。