C标准规定的转义字符
/' | 单引号'(Single Quote,或Apostrophe) |
/" | 双引号" |
/? | 问号?(Question Mark) |
// | 反斜线/(Backslash) |
/a | 响铃(Alert,或Bell) |
/b | 退格(Backspace) |
/f | 分页符(Form Feed) |
/n | 换行(Line Feed) |
/r | 回车(Carriage Return) |
/t | 水平制表符(Horizontal Tab) |
/v | 垂直制表符(Vertical Tab) |
C语言规定了几个控制字符,不能用键盘直接输入,因此采用/加字母的转义序列表示。
/a是响铃字符,在字符终端下显示这个字符的效果是PC喇叭发出嘀的一 声,在图形界面终端下的效果取决于终端的实现。
在终端下显示/b和按下退格键的效果相同。
/f是分页符,主要用于控制打印机在打印源代码时提前分页,这样 可以避免一个函数跨两页打印。
/n和/r分别表示Line Feed和Carriage Return,这两个词来自老式的英文打字机,Line Feed是跳到下一行(进纸,喂纸,有个喂的动作所以是feed),Carriage Return是回到本行开头(Carriage是卷着纸的轴,随着打字慢慢左移,打完一行就一下子移回最右边),如果你看过欧美的老电影应该能想起来这是 什么。用老式打字机打完一行之后需要这么两个动作,/r/n,所以现在Windows上的文本文件用/r/n做行分隔符,许多应用层网络协议(如 HTTP)也用/r/n做行分隔符,而Linux和各种UNIX上的文本文件只用/n做行分隔符,所以很多初学者弄不清楚这两个字符有什么区别。
在终端下 显示/t和按下Tab键的效果相同,用于在终端下定位表格的下一列,/v用于在终端下定位表格的下一行。/v比较少用,/t比较常用,以后将“水平制表符”简称“制表符”或Tab。