转义序列字符(\0,\n,\r,\t,\v,\a,\f,\b,\\,\‘,\“,\?)详解,转义字符对应的全称,输出结果和对应的ASCII码值详解;

  • Post author:
  • Post category:其他





前言

系统是64位Windows,编译器是MinGW64,不同的设备可能会有不一样结果,大家可以自己去试试看;




转义序列字符(Escape Sequence Character):

1、转义字符是C语言中表示字符的一种特殊形式。通常使用转义字符表示ASCII码字符集中不可打印的控制字符和特定功能的字符,如用于表示字符常量的单引号( ‘);

2、转义字符是一种特殊的字符常量。转义字符以反斜线"\"开头,后跟一个或几个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符。





一、\0:空字符

\0表示空字符(NULL),是字符串的结尾,ASCII码值(00H/0)是

字符串结束的标志

printf("hello world!\n");

输出结果为:

hello world!

系统自动在最后一个字符’\n’的后面加上一个’\0’,作为字符串结束的标志。而在执行printf函数时,每输出一个字符检查一次当前字符是否为’\0’,如果是’\0’就会停止输出。




二、\n:换行符

\n表示换行符(New line),将光标移动到下一行开头,ASCII码值(0AH/10)

printf("hello world!\n");

输出结果为:

hello world!

系统在输出”hello world!”之后,遇到‘\n’会自动进行换行;




三、\r:回车符

\r表示回车符(Carriage return),将光标移动到这一行的开头。注意只是移动,没有删除任何东西,如果移动之后再添加新的内容会自动覆盖后面的内容ASCII码值(0DH/13);

printf("hello world!\r");

输出结果为:

hello world!

此时的光标在在开头的位置,如果’\r’后面还有内容,则会被覆盖掉;

printf("hello world!\rworld");

‘\r’后面还有”world”,因为光标在开头,所以此时的”hello”会被覆盖掉,所以此时的输出为:

world world!



四、\t:水平制表符

\t水平制表符(Tab),空格的集合体,一般情况下,一个tab键相当于8个空格,ASCII码值(09H/9);

printf("hello world! \t hello world!\n");

输出为:

hello world!     hello world!



五、\v:垂直制表符

\v垂直制表符(vertical tab),让‘\v’后面的字符从下一行开始输出,且开始的列数为“\v”前一个字符所在列后面一列,ASCII码值(0B/11)。

printf("hello world! \v hello world!\n");

输出为:

hello world! 
              hello world!



六、\a:响铃

\a响铃(speaker beep),响铃,ASCII码值(07/7);




七、\f:换页符

\f换页符(form feed/clear screen),先清空再进行输出,和\v很相似ASCII码值(0CH/12);

printf("hello world! \f hello world!\n");

输出为:

hello world! 
              hello world!



八、\b:退格符

\b退格符(backspace),删除上一个字符,ASCII码值(08H/8);

printf("hello world!\b k");

输出为:

hello world k



九、\:反斜杠

\反斜杠(backslash),输出反斜杠,ASCII码值(5CH/92);

printf("\\");

输出结果为:

\



十、\?:问号

\?问号(question mask),输出问号,ASCII码值(3F/63);

printf("\?");

输出结果为:




十一、\’:单引号

\’单引号(single quote),输出单引号,ASCII码值(27H/39);

printf("\'");

输出结果为:

'



十二、 \”:双引号

\”双引号(double quote),输出双引号,ASCII码值(22H/34);

 printf("\"");

输出结果为:

"



总结

在这里插入图片描述



版权声明:本文为2201_75670821原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。