C語言快速入門:轉(zhuǎn)義字符

理解轉(zhuǎn)義字符

轉(zhuǎn)義字符顧名思議就是轉(zhuǎn)換字符的意義,一個轉(zhuǎn)義字符書寫上是兩個字符,但只表示一個含義。我們已經(jīng)使用過"\n"將文本換行輸出,它就是一個轉(zhuǎn)義字符。printf()函數(shù)在碰到"\n"時,并沒有直接輸出字符''與字符'n',而是將它們看作一個換行標記,執(zhí)行了換行操作,以使后面的輸出打印在新的一行。
C語言還包括以下幾個常用的轉(zhuǎn)義字符:
\t 橫向制表符
\\ 反斜框
' 單引號
" 雙引號

使用轉(zhuǎn)義字符

1:使用制表符格式化輸出

橫向制表符\t可以用于格式化文本輸出,假如我們要輸出一組表格樣式的數(shù)據(jù),一種方法是使用輸出多個空格對齊,另一種方法就是使用\t。在下面的程序中,我們?yōu)楸砀竦牡?列與第2列應(yīng)用兩次\t以使列之間有更多的間距。

printf( "Name\t\tAge\t\tE-Mail\n"
        "GLimix\t\t17\t\tglimix@glimix.com\n"
        "Alex\t\t18\t\talex@luna.com\n" );

2:使用反斜框輸出文件路徑

當我們需要在程序的運行日志 或調(diào)試時輸出文件路徑信息,又或者像下面這樣,簡單的將一個路徑輸出到控制臺,這時我們需要使用反斜框轉(zhuǎn)義符來進行路徑轉(zhuǎn)義輸出。

printf( "c\\windows\\program files\\readme.txt\n\n" );

思考一下:如果我將路徑中的'\'換成''會出現(xiàn)什么問題?
你將得到一個編譯錯誤!在字符串輸出過程中,當遇到''時,相當于告訴程序:我后面將跟隨一個字符,請把它解釋為其它的含義。比如說遇到'n'時請換行?,F(xiàn)在在第一個''字符的后遇到了字符'w',組合后形成了'\w',對于C語言而言,這不是一個有效的轉(zhuǎn)義字符,因此編譯會提示你發(fā)生了錯誤。

3:使用雙引號或單引號輸出被引用的文本

如同我們平時寫作一樣,當有一部分文檔內(nèi)容來源于其它文檔,或引用名人警句時,通常我們會使用引號將對應(yīng)的語句包含起來,這時我們就需要轉(zhuǎn)義引號。

printf( "\'Daddy, shush, there is no such thing.\'she said.\n" );

這里是三段程序運行的結(jié)果圖。

glimix.com

但是有個令人沮喪的消息就是\t,在這個簡單的程序中,表格輸出的每一列在左端都能很好的對齊。你可以嘗試更改某條記錄的Name字段使其變得更長,這種對齊將會被打亂,形成很難控制的局面。這時你會發(fā)現(xiàn)單純的使用空格來設(shè)計表頭可能會更合適。

此外,C語言還有'\b'等之類的轉(zhuǎn)義字符,隨著我們的深入學習,將進一步理解使用。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容