转义字符

来源:互联网 发布:内蒙古艺术学院网络 编辑:程序博客网 时间:2024/04/29 03:24

除了能直接表示和在屏幕上显示的字符外,还有一些字符是不能显示的,用来作为输出信息时的控制符号(如换行、退格等)。

“\n”就是这样的控制字符,在编译时如果遇到字符“\”,就接着往后找,它和其后的n一起作为一个特殊字符处理,即通知编译系统:插入一个换行。

如果以单个字符形式出现,应该用单撇号把\n包起来('\n')。如果出现在一个以双撇号包起来的字符串中。则\n不需要单撇号了。不要写成下面这种形式:

printf("abcd'\n'");printf("%c%c%c'\n'",a,b,c);

这和一般的字符(如'a','b')在字符串中就不要加单撇号的道理是一样的。

‘\n’也是一个字符常量,可以赋值给一个字符变量:

char c;c = '\n';printf("%c",c);

执行结果是在屏幕上执行一次换行。

这样的字符称为转义字符,意思是将反斜杠"\"后面的字符转换成另外的意义。如'\n'中的n就不再是代表字符‘n’了,而是作为换行符号。

除了‘\n’之外,还有其他的转义字符:

\t 使下一个输出的数据跳到下一个输出区(一行中一个输出去占7列)

\b 退格。将当前的输出位置退回前一列处,即消除前一个已经输出的字符

\r 回车。将当前的输出位置返回在本行开头

\f 换页。将当前的输出位置移到下页的开头

\0 代表ASCII代码为0的控制字符,即“空操作”字符。常用于字符串中。作为字符串的结束标志。

\ddd 1~3位八进制数所代表的字符

\xhh 1~2位十六进制数所代表的字符

如,‘\101’代表ASCII码为八进制数101的字符,八进制101相当于十进制数65,ASCII码为65的字符是‘A’,因此,‘\101’和'A'等价;‘\12’代表ASCII码为10的字符,也就是“换行符”,因此‘\12’和‘\n’等价;同理,‘\x41’代表字符'A'。


转义字符必须以反斜杠“\”作为开头的标志,而且气候只能有一个字符(或者代表字符的八进制或十六进制数),如'\nn'是不合法的,它并不能代表换行两次。

原创粉丝点击