C語言轉義字符
C語言之所以命名為C,是因為 C語言源自Ken Thompson發明的B語言,而 B語言則源自BCPL語言。下面是小編分享的C語言轉義字符,一起來看一下吧。
通過printf可以輸出字符串,例如:
printf("123abc");
"123abc" 對應的ASCII碼值的八進制分別是 61、62、63、141、142、143,上面的代碼也可以寫為:
printf("616263141142143");
在C語言中,所有的ASCII碼都可以用反斜槓加數字(默認是8進制)來表示,稱為轉義字符(Escape Character),因為後面的字符都不是它原來的ASCII字符的'意思了。
除了八進制,也可以用十六進制來表示。用十六進制表示時數字要以x開頭。"123abc" 對應的ASCII碼值的十六進制分別是 31、32、33、61、62、63,所以也可以寫為:
printf("x31x32x33x61x62x63");
注意:只能使用八進制或十六進制,不能使用十進制。
一個完整的例子:
#includeint main(){ printf("616263x61x62x63"); return 0;}
運行結果:
123abc
在ASCII碼中,從 0~31(十進制)的字符為控制字符,它們都是看不見的字符,不能在顯示器上顯示,也沒法書寫,只能以轉義字符的形式來表示。不過,直接使用ASCII碼值記憶不方便,針對常用的控制字符,C語言又定義了簡寫方式,完整的列表如下:
轉義字符 | 意義 | ASCII碼值(十進制) |
---|---|---|
a | 響鈴(BEL) | 007 |
退格(BS) ,將當前位置移到前一列 | 008 | |
f | 換頁(FF),將當前位置移到下頁開頭 | 012 |
換行(LF) ,將當前位置移到下一行開頭 | 010 | |
回車(CR) ,將當前位置移到本行開頭 | 013 | |
水平製表(HT) (跳到下一個TAB位置) | 009 | |
v | 垂直製表(VT) | 011 |
轉義字符示例:
#includeint main(){ printf("C C++ Javaa"); return 0;}
運行結果:
C C++ Java
同時會聽到喇叭發出“嘟”的聲音,這是使用a的效果。
【拓展】如何在字符串中輸出"和
"和在字符串中都有特殊含義:"表示字符串的開始和結束,表示轉義字符的開始。它們都不能直接出現在字符串中,必須要經過轉義,也就是在前面加,如"、。
例如,輸出字符串abc61"xyz的代碼:
#includeint main(){ printf("abc61"xyz"); return 0;}
運行結果:
abc61"xyz
如果不經過轉義,寫作puts("abc61"xyz");,那麼會輸出abc1"xyz,61被當做轉義字符處理。
如果"不經過轉義,寫作puts("abc61"xyz");,就會出現錯誤,編譯器會把"abc61"作為一個字符串,而xyz"不知道是什麼,也不應該出現在這裏,所以報錯。
總結:字符串中出現、"時必須要轉義。
-
2017年3月計算機二級C語言考試摸底測試題
以下是yjbys考試網小編整理的2017年3月計算機二級C語言考試摸底測試題,希望對大家有所幫助,祝大家計算機二級考試順利通過。一、選擇題(每小題1分。)(1)程序流程圖中帶有箭頭的線段表示的是()。A.圖元關係B.數據流C.控制流D.調用關係(2)結構化程序設計的基本原則...
-
C語言if else語句彙總
對於很多情況,順序結構的代碼是遠遠不夠的,大家都接觸過C語言吧,下面是小編為大家整理的C語言ifelse語句,希望對大家有所幫助。C語言ifelse語句在C語言中,使用if和else關鍵字對條件進行判斷。請先看下面的代碼:#includeintmain(){intage;printf("請輸入你的年齡:");sc...
-
C語言精選面試題詳解
C語言是IT編程中最基礎的語言,在面試中,基本可以忽略又或者格外重要。下面是小編為大家整理的C語言精選面試題詳解,歡迎參考~分析這些面試題,本身包含很強的趣味性;而作為一名研發人員,通過對這些面試題的深入剖析則可進一步增強自身的內功。試題1:以下是引用片段:voi...
-
2017年計算機二級考試C語言備考題及答案
計算機二級對於很多考生來説還是比較有難度的,那麼怎樣順利通過二級考試呢?這就需要大家平時多練習和找方法了。以下是本站小編整理的2017年計算機二級考試C語言備考題及答案,希望對大家有幫助!1.(A)是構成C語言程序的基本單位。A、函數B、過程C、子程序D、子例...