官术网_书友最值得收藏!

4.5 轉義序列

在C++/C中,有些字符在程序代碼中具有特殊的含義,例如,“%”表示取余,在字符串中表示I/O格式控制,“"”表示字符串的開始和結束,“?”是三元運算符 ?:的一分子,等等。那么,現在想把這些字符本身輸出到終端上,尤其是當它們出現在普通字符串或格式控制字符串中的時候,就需要做一些特殊處理。一般說來有兩種辦法:使用轉義序列或者直接引用ASCII碼值。轉義序列是由反斜線(\)后跟一個特定轉義字符組成的。常見的轉義序列見表4-1。

表4-1 轉義序列

其實由%引導的I/O格式控制字符序列,如%d、%f、%%等,也都是轉義序列。

轉義序列用在I/O格式控制字符串中才會體現出它的用途,而在其他場合下的普通字符串中并不表現其轉義語義。

在字符串中可以使用“\0OOO”或“\xHH”來引用ASCII碼表中的任何一個字符,其中“OOO”和“HH”分別表示該字符的八進制數據和十六進制數據ASCII碼值。

【提示4-10】: 要區分“換行”與“回車”的語義。首先,它們的ASCII碼值不同。“換行”字符一般用于文件,即把從鍵盤輸入的“回車”字符轉換為“換行”字符來保存而不是直接保存“回車”字符;“換行”還用于程序的輸出控制,即輸出一個“換行”字符以指示終端輸出從新行開始。而“回車”是鍵盤功能,用于輸入控制,例如,代替“鼠標左擊”和表示輸入的結束或從新行輸入,它不能輸出。因此要記住:輸出“換行”,輸入“回車”。不過有些字符輸入函數可以把鍵盤輸入的“回車”字符自動轉換為“換行”字符返回,如getchar()。

主站蜘蛛池模板: 松滋市| 工布江达县| 平罗县| 满城县| 常山县| 阳谷县| 禹城市| 吴忠市| 五指山市| 梁河县| 巧家县| 湘阴县| 舞阳县| 青海省| 武强县| 崇信县| 乐昌市| 华容县| 喀喇| 遵化市| 砚山县| 湖南省| 蚌埠市| 山西省| 宜州市| 永年县| 梧州市| 张家川| 建始县| 衡南县| 若羌县| 乌兰察布市| 页游| 巨野县| 炉霍县| 芮城县| 鄱阳县| 潞西市| 江津市| 松桃| 营口市|