C語言中的字符常量使用單引號(即撇號)括起來的一個字符。如‘a’,‘x’,'D',‘?’,‘$’等都是字符常量。注意,‘a’和‘A’是不同的字符常量。
除了以上形式的字符常量外,C還允許用一種特殊形式的字符常量,就是以一個“\”開頭的字符序列。例如,前面已經遇到過的,在printf函數中的‘\n’,它代表一個“換行”符。這是一種“控制字符”,在屏幕上是不能顯示的。在程序中也無法用一個一般形式的字符表示,只能采用特殊形式來表示。
常用的以“\”開頭的特殊字符有
字符形式 | 含義 | ASCII代碼 |
\n | 換行,將當前位置移到下一行開頭 | 10 |
\t | 水平制表(跳到下一個tab位置) | 9 |
\b | 退格,將當前位置移到前一列 | 8 |
\r | 回車,將當前位置移到本行開頭 | 13 |
\f | 換頁,將當前位置移到下頁開頭 | 12 |
\\ | 反斜杠字符“\” | 92 |
\' | 單引號(撇號)字符 | 39 |
\'' | 雙引號字符 | 34 |
\ddd | 1到3位8進制數所代表的字符 | |
\xhh | 1到2位16進制數所代表的字符 |
表中列出的字符稱為“轉義字符”,意思是將反斜杠(\)后面的字符轉換成另外的意義。如‘\n’中的“n”不代表字母n而作為“換行”符。
表中最后第2行是用ASCII碼(八進制數)表示一個字符,例如‘\101’代表ASCII碼(十進制數)為65的字符“A”。‘\012’(十進制ASCII碼為10)代表“換行”。用‘\376’代表圖形字符“黑色□”。用表中的方法可以表示任何可輸出的字母字符、專用字符、圖形字符和控制字符。請注意‘\0’或‘\000’代表ASCII碼為0的控制字符,即“空操作”字符,它將用在字符串中。