轉義字符
轉義有兩層含義,一層是把普通字符轉化為特殊字符,例如’\t’;另一種是將特殊字符轉化為普通字符,例如’\’,
轉義字符可以分為三類,第一類是普通轉義字符,第二類是八進制轉義字符,第三類是十六進制轉義字符,
普通轉義字符
| 轉義字符 | 釋義 |
|---|---|
| \? | 書寫連續多個問號時,防止被決議成三字母 |
| \’ | 用于表示字符常量’ |
| \" | 用于表示字符常量" |
| \\ | 用于表示字符常量\ |
| \a | 警告字符,蜂鳴器鳴響 |
| \b | 退格符 |
| \f | 進紙符 |
| \n | 換行 |
| \r | 回車 |
| \t | 水平制表符 |
| \v | 垂直制表符 |
其中\b并不是鍵盤上的backspace鍵,而是游標向前回退一個字符
例如下圖:

還需注意的是\r 和\n 的區別,/r 是回車,/n 是換行 ;早期的打字機上,要另起一行打字需要兩個步驟,首先要發送命令"/r”將打字頭復位,即回車,然后再發送命令"/n”讓打字機走紙移到下一行,所以這個歷史遺留問題導致了如今我們在DOS-Windows的系統里需要區分"/r/n”和“/n”
兩者具體區分如下:

八進制和十六進制轉義字符
八進制轉義字符的格式是\ddd(ddd表示1~3個八進制的數字),例如\123代表的就是十進制的83,查閱ASCII碼表可知,它代表的字符是S,
十六進制轉義字符的格式是\xdd(dd代表1~2個十六進制的數字),例如\x2a代表的就是十進制的42,查閱ASCII表可知,它代表的字符是*,
需要注意的是,不管八進制還是十六進制的轉義字符其本質都是字符型變數,所以只有八個位元組,故八進制轉義字符最大到\377(二進制的1111 1111)

同理十六進制轉義字符的最大值為\xff(二進制1111 1111),
程式輸出什么?
#include <stdio.h>
#include <string.h>
int main(){
printf("%d",strlen("c:\test\328\test.c"));
return 0;
}
結果為14,其中的轉義字符有’\t’,’\32’,’\t’,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/145423.html
標籤:其他
上一篇:詳解vim命令用法
