C语言 转义字符

Python017

C语言 转义字符,第1张

转义字符是C语言中表示字符的一种特殊形式。通常使用转义字符表示ASCII码字符集中不可打印的控制字符和特定功能的字符,如用于表示字符常量的单撇号( '),用于表示字符串常量的双撇号( ")和反斜杠( \)等。转义字符用反斜杠\后面跟一个字符或一个八进制或十六进制数表示。

\是转义字符\aaa表示转义的是8进制。

\032代表的就是字符→

P+5并没有超出范围,楼下的说法是错误的。

\aaa就是说\后面的3位数字(八进制)被转义。

扩展资料:

转义序列通常有两种功能。

第一个是编码一个句法上的实体,如设备命令或者无法被字母表直接表示的特殊数据。

第二种功能,也叫字符引用,用于表示无法在当前上下文中被键盘录入的字符(如字符串中的回车符),或者在当前上下文中会有不期望的含义的字符(如C语言字符串中的双引号字符",不能直接出现,必须用转义序列表示)。

在后面那种情况,转义序列是一种由转义字符自身和一个被引用的字符组成的一个二合字母(digraph)情形。

参考资料来源:百度百科-转义字符

转义字符C语言表示字符种特殊形式通常使用转义字符表示ASCII码字符集打印控制字符和特定功能字符用于表示字符常量单撇号( ')用于表示字符串常量双撇号( ")和反斜杠( \)等转义字符用反斜杠\面跟字符或八进制或十六进制数表示

转义字符 意义 ASCII码值(十进制)

\a 响铃(BEL) 007

\b 退格(BS) 008

\f 换页(FF) 012

\n 换行(LF) 010

\r 回车(CR) 013

\t 水平制表(HT) 009

\v 垂直制表(VT) 011

\\ 反斜杠 092

\? 问号字符 063

\' 单引号字符 039

\" 双引号字符 034

\0 空字符(NULL) 000

\ddd 任意字符 三位八进制

\xhh 任意字符 二位十六进制

字符常量使用单引号和反斜杠及字符常量使用双引号和反斜杠时都必须使用转义字符表示即些字符前加上反斜杠

C程序使用转义字符\ d d d或者\ x h h方便灵活地表示任意字符\ d d d斜杠面跟三位八进制数该三位八进制数值即对应八进制A S C I I码值\ x面跟两位十六进制数该两位十六进制数对应字符十六进制A S C I I码值

使用转义字符时需要注意下问题:

1) 转义字符只能使用小写字母每转义字符只能看作字符

2) \v 垂直制表和\f 换页符对屏幕没有任何影响会影响打印机执行响应操作

3) C程序使用打印字符时通常用转义字符表示

4)\n其实应该叫回车换行换行只换行改变光标横坐标;回车只回行首改变光标纵坐标

5)\t 光标向前移动四格或八格编译器里设置

6)\' 字符里(即单引号里)使用字符串里(即双引号里)需要只要用 ' 即

7)\? 其实必要只要用 ? 了(windows VC6 和tc2 验证)

上面以\x开头的是十六进制

\0开头的是八进制数

\x18

是是十进制的24

(ascii码是↑)

\0123是十进制的83、(S)

\01是十进制的1

(☺);\08是十进制的8;qw是字符数据直接输出,\0168

是十进制的120;最后\0标是结束;C语言里\0和\000都表示空操作常用在字符串操作中

但运行环境检查数据时会检查八进制转义字符的开头\0***而按\000检查数据是不是空操作。【上面的数据我已经转换成十进制

你直接查ascii码标对照就是对应的字符,有些字符不好打我就不打了哈】

望采纳咯

谢谢