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”;
所以在不同的平台下打开同一个文件,可能会出现乱码的情况。
时间: 2024-10-07 01:19:43