五、字符串、转义字符、注释
5.1字符串
有双引号引起的一串字符叫做字符串
注意: 根据上面的代码,可以看出在字符串的后面隐藏了一个‘\0’的转义字符,‘\0’是字符串结束的标志。chi1中没有‘/0’,在打印时会一直向后打印,直到找到‘\0’停止
注意: strlen是库函数,使用时要引头文件,它是用来计算字符串的长度,求‘/0’之前的字符个数,‘/0’不算做字符串的内容
5.2转义字符
转义字符 |
释义 |
\? |
在书写连续多个问号时使用,防止他们被解析成三字母词 |
\' |
用于表示字符常量' |
\" |
用于表示一个字符串内部的” |
\\ |
用于表示一个反斜杠,防止它被解释为一个转义序列符 |
\a |
警告字符 |
\b |
退格符 |
\f |
进纸符 |
\n |
换行 |
\r |
回车 |
\t |
水平制表符 |
\v |
垂直制表符 |
\ddd |
d d d表示1~3个八进制的数字。 如: \130 表示字符X |
\add |
d d表示2个十六进制数字。 如: \x30 表示字符0 |
??) --- 三字母词 --->在有些编译器中会编译成 ]
根据错误提示可以知道,单引号(双引号)会与它离得最近的结合,所以要使用’/’,使中间的单引号表示为字符常量
六、注释
- 代码中不需要的代码可以不用删除,将代码注释
- 有些代码会很复杂,可以加一些解释文字
注释有两种分风格
- C语言风格的注释 /*xxxxxxxxx*/
缺点:不能嵌套注释
- C++风格的注释 //xxxxxxxxx
可以注释一行,也可以注释多行
注意:注释更重要的用途是解释代码
七、选择语句
选择语句的分类
- if语句
- switch语句
#include <stdio.h> int main() { int a = 0; printf("能否坚持学习(选择0or1):>"); scanf("%d", &a); if (a == 1) { printf("YES\n"); } else { printf("NO\n"); } return 0; }
八、循环语句
循环语句的分类
- while语句
- for语句
- do ……while语句
#include <stdio.h> int main() { int a = 1; while (a < 10) { printf("%d ", a); a++; } return 0; }
九、函数
函数的分类
- 库函数
- 自定义函数
#include <stdio.h> int Add(int x, int y) { int z = x+y; return z; } int main() { int num1 = 0; int num2 = 0; int sum = 0; printf("输入两个操作数:>"); scanf("%d %d", &num1, &num2); sum = Add(num1, num2); printf("sum = %d\n", sum); return 0; }
函数的特点就是简化代码,代码复用
十、数组
C语言中给了数组的定义:一组相同类型元素的集合
10.1数组的定义
int arr[10] = {1,2,3,4,5,6,7,8,9,10};//定义一个整形数组,最多放10个元素
10.2数组的下标
C语言规定:数组的每个元素都有一个下标,下标是从0开始的。 数组可以通过下标来访问的
10.3数组的使用
#include <stdio.h> int main() { int i = 0; int arr[10] = { 1,2,3,4,5,6,7,8,9,10 }; for (i = 0; i < 10; i++) { printf("%d ", arr[i]); } printf("\n"); return 0; }
十一、操作符
简单对操作符进行分类,不展示用法
- 算术操作符
+ - * / %
- 移位操作符
<< >>
- 位操作符
& | ^
- 赋值操作符
= += -= *= /= &= ^= |= >>= <<=
单目操作符
! 逻辑反操作
- 负值
+ 正值
& 取地址
sizeof 操作数的类型长度(以字节为单位)
~ 对一个数的二进制按位取反
-- 前置、后置--
++ 前置、后置++
* 间接访问操作符(解引用操作符)
(类型) 强制类型转换
关系操作符
>
>=
<
<=
!= 用于测试“不相等”
== 用于测试“相等”
逻辑操作符
&& 逻辑与
|| 逻辑或
条件操作符
exp1 ? exp2 : exp3
下标引用、函数调用和结构成员
[] () . ->
十二、常见关键字
C语言提供了丰富的关键字,这些关键字都是语言本身预先设定好的,用户自己是不能创造关键字
auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while
十三、#define定义常量和宏
//define定义标识符常量 #define MAX 1000 //define定义宏 #define ADD(x, y) ((x)+(y)) #include <stdio.h> int main() { int sum = ADD(2, 3); printf("sum = %d\n", sum); sum = 10 * ADD(2, 3); printf("sum = %d\n", sum); return 0; }
本次的内容到这里就结束啦。希望大家阅读完可以有所收获,同时也感谢各位读者三连支持。文章有问题可以在评论区留言,博主一定认真认真修改,以后写出更好的文章。