一、字符串
1.1 介绍
字符串:由双引号引起来的一串字符。
在C语言中,字符串可用一个字符数组来存储,以空字符\0
结尾,在计算字符串长度时不包括\0。
如上图所示,字符串可以有两种不同的初始化方式其结果不同。方法一:直接初始化,arr1数组存储的字符串”abc“长度为3,数组长度为4,c字符后自动存储了‘\0’作为结束标志。方法二:字符逐个初始化,对于arr2,相当于在内存中开辟了一部分空间来存储数组中的元素,'\0'并没有位于'c'后存在于未知位置,数组里存放的元素除了abc还有其他的,所以长度和元素都是未可知的,每次程序运行结果可能不同。
1.2字符串函数
C语言标准库(string.h
)提供了一系列处理字符串的函数,包括:
strlen(const char *str)
: 计算字符串的长度(不包括结束符\0
)。
strcpy(char *dest, const char *src)
: 将src
字符串复制到dest
字符串中。
strcat(char *dest, const char *src)
: 将src
字符串连接到dest
字符串的末尾。
strcmp(const char *str1, const char *str2)
: 比较两个字符串,返回整数表示它们之间的关系。
strchr(const char *str, int c)
: 查找字符串中第一次出现的字符c
。
strstr(const char *str1, const char *str2)
: 查找字符串str1
中第一次出现的字符串str2
。
二、转义字符
2.1 介绍
在C语言中,转义字符是一种特殊的字符,用来表示那些难以在普通字符集中直接表示的字符。
2.2 转义字符总结
\n
:换行符,将光标移至下一行的开头。\t
:水平制表符,相当于按下Tab键的效果。\\
:反斜杠字符本身。\'
:单引号字符本身。\"
:双引号字符本身。\r
:回车符,将光标移至当前行的开头,但不换行。\f
:换页符,用于分页符的控制,但现代操作系统中很少使用。\a
:响铃(警报)符,用来产生声音或可视警报。\v
:垂直制表符,但其在大多数文本环境中并不常用。\0
:空字符(null character),其ASCII码值为0,常用于字符串的结束标志。\ddd
:其中ddd是一个1到3位的八进制数,表示对应的ASCII字符。例如,\101
代表字母A(在ASCII中,A的十进制值为65,八进制值为101)。\xhh
:其中hh是一个或多个十六进制数,表示对应的ASCII字符。例如,\x41
代表字母A(在ASCII中,A的十六进制值为41)。下面是一个小测试,可以检验一下自己是否理解了转义字符的概念。
三、注释
3.1 介绍
在C语言中,注释是用来解释代码的文字,它们不会被编译器执行或包含在最终的程序中。注释对于提高代码的可读性和可维护性非常重要。
3.2 注释类型
C语言支持两种类型的注释:
单行注释:以两个正斜杠(//
)开始,直到行尾的所有内容都被视为注释。
多行注释(也称为块注释):以/*
开始,以*/
结束。这种注释方式可以跨越多行。
其中值得注意的是多行注释方法不可以嵌套注释。