c 语言里面字符用单引号括起来,并且单引号里面只能有一个字符,
例如 : ‘a‘ 、 ‘b‘ 分别表示字符a 和字符b
但是也有一类字符,它们虽然用单引号括起来,但是里面并不止一个字符,
例如: ‘\c‘、 ‘\d‘、 ‘\\‘ 分别表示字符a、 字符b、 字符\
它们叫做转义字符,表示 “\” 后面的字符,在vs里面可以看到:
‘c‘ 和‘d‘ 前面的99 和 100 表示 ‘c‘ 和‘d‘ 的ascii码 ;
但是也有一些转义字符虽然形式和上面一些转义字符很很像,但是它们不在表示"\" 后面的字符,而是有别的含义:
例如:
\a
|
响铃(BEL)
|
007
|
\b
|
退格(BS) ,将当前位置移到前一列
|
008
|
\f
|
换页(FF),将当前位置移到下页开头
|
012
|
\n
|
换行(LF) ,将当前位置移到下一行开头
|
010
|
\r
|
回车(CR) ,将当前位置移到本行开头
|
013
|
\t
|
水平制表(HT) (跳到下一个TAB位置)
|
009
|
\v
|
垂直制表(VT)
|
011
|
\\
|
代表一个反斜线字符‘‘\‘
|
092
|
\‘
|
代表一个单引号(撇号)字符
|
039
|
\"
|
代表一个双引号字符
|
034
|
\0
|
空字符(NULL)
|
000
|
\ddd
|
1到3位八进制数所代表的任意字符
|
三位八进制
|
\xhh
|
1到2位十六进制所代表的任意字符
|
二位十六进制
|
在vs中可以看到:
‘\a‘ 的值是7,为 不可打印字符 ’.‘ ,执行时会听到一声响铃, ‘\t‘是制表符向后偏移4个空格,结果如下:
在第二种转义字符里面,要单独讲一下 ‘\r‘ 和 ‘\n‘:
‘\r‘ 表示回车, ‘\n‘表示换行 (回车和换行不是一个概念)
在打印的时候:
回车表示从当前行的行尾转到当前行的行首;
换行表示从当前转到下一行(如果是单独的换行,不一定转到下一行的行首)
Windows系统里面,每行结尾是“<回车><换行>”,即“ \r\n”;
Unix 系统里,每行结尾只有“<换行>”,即“\n”;
Mac系统里,每行结尾是“<回车>”, 即“\r”;
所以在不同的平台下打开同一个文件,可能会出现乱码的情况。
原文地址:http://blog.csdn.net/chengzi_comm/article/details/45919087