c语言中的转义字符有哪些
发布时间:2025-05-14 01:31:59 发布人:远客网络
一、c语言中的转义字符有哪些
通常使用转义字符表示ASCII码字符集中不可打印的控制字符和特定功能的字符,如用于表示字符常量的单撇号('),用于表示字符串常量的双撇号(")和反斜杠(\)等。
通过puts可以输出字符串,例如:
"123abc"对应的ASCII码值的八进制分别是 61、62、63、141、142、143,上面的代码也可以写为:
在C语言中,所有的ASCII码都可以用反斜杠\加数字(默认是8进制)来表示,称为转义字符(Escape Character),因为\后面
的字符都不是它原来的ASCII字符的意思了。
除了八进制,也可以用十六进制来表示。用十六进制表示时数字要以x开头。"123abc"对应的ASCII码值的十六进制分别是 31、32、33、61、62、63,所以也可以写为:
注意:只能使用八进制或十六进制,不能使用十进制。
运行结果:The string is: 123abc
在ASCII码中,从 0~31(十进制)的字符为控制字符,它们都是看不见的字符,不能在显示器上显示,也没法书写,只能以转义字符的形式来表示。
同时会听到喇叭发出“嘟”的声音,这是使用\a的效果。
直接使用ASCII码值记忆不方便,针对常用的控制字符,C语言又定义了简写方式,完整的列表如下:
二、C语言中转义字符有什么规定
1、'\1011'不合法,八进制格式的转义字符不超过3位。
2、“\”不合法,转义字符以“\”开头,后面必须有其它具bai有意义的字符,不能单独使用。
3、'\xyz'不合法,yz不是十六进制数。
4、所有的ASCII码都可以用“\”加数字来表示。而C中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符,因为后面的字符,都不是它本来的ASCII字符意思了。
5、转义字符是很多程序语言、数据格式和通信协议的形式文法的一部分。对于一个给定的字母表,一个转义字符的目的是开始一个字符序列,使得转义字符开头的该字符序列具有不同于该字符序列单独出现时的语义。因此转义字符开头的字符序列被叫做转义序列。
6、第一个是编码一个句法上的实体,如设备命令或者无法被字母表直接表示的特殊数据。
7、第二种功能,也叫字符引用,用于表示无法在当前上下文中被键盘录入的字符(如字符串中的回车符),或者在当前上下文中会有不期望的含义的字符(如C语言字符串中的双引号字符",不能直接出现,必须用转义序列表示)。
8、在后面那种情况,转义序列是一种由转义字符自身和一个被引用的字符组成的一个二合字母(digraph)情形。
9、参考资料来源:百度百科-转义字符
三、C语言转义字符
1、字符常量中使用单引号和反斜杠以及字符常量中使用双引号和反斜杠时,都必须使用转义字符表示,即在这些字符前加上反斜杠。下图是C语言中常用的转义字符。
2、在C程序中使用转义字符\ddd或者\xhh可以方便灵活地表示任意字符。\ ddd为斜杠后面跟三位八进制数,该三位八进制数的值即为对应的八进制ASCII码值。\ x后面跟两位十六进制数,该两位十六进制数为对应字符的十六进制ASCII码值。
3、使用转义字符时需要注意以下问题:
4、1)转义字符中只能使用小写字母,每个转义字符只能看作一个字符。
5、2) \v垂直制表和\f换页符对屏幕没有任何影响,但会影响打印机执行响应操作。
6、3)在C程序中,使用不可打印字符时,通常用转义字符表示
7、1,\v垂直制表和\f换页符对屏幕没有任何影响,但会影响打印机执行响应操作。
8、2,\n其实应该叫回车换行。换行只是换一行,不改变光标的横坐标;回车只是回到行首,不改变光标的纵坐标。
9、3,\t光标向前移动四格或八格,可以在编译器里设置
10、4,\'在字符里(即单引号里)使用。在字符串里(即双引号里)不需要,只要用'即可。
11、5,\?其实不必要。只要用?就可以了(在windows VC6和tc2中验证)。