文章目录
什么是转义字符1. \02. \a3. \b4. \t5. \n6. \v7. \f8. \r9. \\"10. \\'11. \\?12. \\\13. \ddd14. \xhhASCII码表
序号转义字符转义功能ASCII码值1\0空字符02\a响铃73\b退格(Backspace)84\t水平制表符(即横向跳格)95\n回车换行(Enter)106\v竖向跳格117\f换页128\r回车139\"双引号(")3410\’单引号(‘’)3911\?问号(?)6312\\反斜线字符(\)9213\ddd1~3位八进制所代表的字符14\xhh1~2位十六进制所代表的字符
什么是转义字符
它用来表示控制符(如回车、换行等)与不可见字符,作用是改变其后的字符或ASCII码值的原有意义,转义为另外的含义
1. \0
空字符,常被系统自动加在每个字符串的尾部,作为字符串的结束标志,占用一个字节的内存空间。
例如:
#include
int main
{
printf("abcd\0efg");
return 0;
}
执行结果:
abcd
2. \a
响铃,输出\a时会有错误音效。
可以执行下列代码尝试听一下:
#include
int main()
{
printf("\a");
return 0;
}
3. \b
退格(Backspace),虽然被称为Backspace,但功能与键盘上的向左删除不一定一样。
(由于目前我只用下面两个编译器,并不清楚其他编译器中\b的功能) 在 VS2022 中:向左删除 见下:
解释:将3456直接删除。
在 Dev-C++ 中:移动光标 见下: 解释:在6之后将光标移到了3的位置,后面的ABC将345覆盖了。 注: 在这两种编译器中\b对\n不起作用 VS2022: Dev-C++: 解释:若\b对\n起作用,就不会换行。
4. \t
水平制表符,即横向跳格,跳到下一制表位,可把每8个字符看作一个水平制表符,即\t前面字符还差几个满8个字符就空几个字符的位置
如下:
5. \n
回车换行(Enter)
6. \v
垂直制表符,即竖向跳格
#include
int main()
{
printf("1234\v5678");
return 0;
}
输出结果:
1234
5678
但在VS2022中:
7. \f
走纸符,换页,将当前位置光标移到下一页开头,在控制台中无法体现出作用,在打印走纸换页时可以使用,它能将后面的文体打印到一张新纸
在控制台:
8. \r
回车,将光标位置移到首位
如下: 解释:\r将光标位置移到首位后,ab依次将12覆盖
9. \"
指双引号 "
10. \’
指单引号 ’
11. \?
指 ? ,防止在书写连续多个问号时被解析成三字母词
12. \\
指 \
13. \ddd
1~3位八进制所代表的字符
例如: 解释:八进制101对应十进制为65,对应ASCII码为 A
14. \xhh
hh指两位十六进制所代表的字符,使用前要加\x
例如: 解释:十六进制数字41对应十进制为65,对应ASCII码为 A
ASCII码表