C語言常用逸出字元表
逸出字元 |
含義 |
ASCII碼(16/10進位) |
\o |
Null 字元(NULL) |
00H/0 |
\n |
分行符號(LF) |
0AH/10 |
\r |
斷行符號符(CR) |
0DH/13 |
\t |
水平定位字元(HT) |
09H/9 |
\v |
垂直製表(VT) |
0B/11 |
\a |
響鈴(BEL) |
07/7 |
\b |
退格符(BS) |
08H/8 |
\f |
換頁符(FF) |
0CH/12 |
\’ |
單引號 |
27H/39 |
\” |
雙引號 |
22H/34 |
\\ |
反斜線 |
5CH/92 |
\? |
問號字元 |
3F/63 |
\ddd |
任一字元 |
三位八進位 |
\xhh |
任一字元 |
二位十六進位 |
字元常量中使用單引號和反斜線以及字元常量中使用雙引號和反斜線時,都必須使用逸出字元表示,即在這些字元前加上反斜線。 在C程式中使用逸出字元\ d d d或者\ x h h可以方便靈活地表示任一字元。\ d d d為斜杠後面跟三位八位元,該三位八位元的值即為對應的八進位A S C I I碼值。\ x後面跟兩位十六進位數,該兩位十六進位數為對應字元的十六進位A S C I I碼值。 使用逸出字元時需要注意以下問題: 1) 逸出字元中只能使用小寫字母,每個逸出字元只能看作一個字元。 2) \v 垂直製表和\f 換頁符對螢幕沒有任何影響,但會影響印表機執行響應操作。 3) 在C程式中,使用不可列印字元時,通常用逸出字元表示 註: 1,\v垂直製表和\f換頁符對螢幕沒有任何影響,但會影響印表機執行響應操作。 2,\n其實應該叫斷行符號換行。換行只是換一行,不改變游標的橫座標;斷行符號只是回到行首,不改變游標的縱座標。 3,\t 游標向前移動四格或八格,可以在編譯器裡設定 4,\' 在字元裡(即單引號裡)使用。在字串裡(即雙引號裡)不需要,只要用 ' 即可。 5,\? 其實不必要。只要用 ? 就可以了(在windows VC6 和tc2 中驗證)。
格式控制符參考: 對64位整數的輸入輸出,在POJ上的C++環境下(即VC++),64位整數是: __int64 輸入輸出格式為”%I64d”. 在G++環境下, 64位整數是 long long 輸入輸出格式為”%lld”. 域寬及精度的描述 M:域寬,即對應的輸出項在輸出裝置上所佔字元數 若:實際資料寬度>M,按實際資料寬度輸出。 實際資料寬度<M,左邊補空。 N:精度,說明輸出的實型數的小數位元。 幾點說明: 編譯器只是檢查printf 函數的調用形式,不分析格式控制字元串,如果格式字元與輸出項的類型不符,不進行類型轉換。(輸出的數為隨機) 格式字元要用小寫字母。 格式控制字元串中可以包含逸出字元。 格式控制字元串中的一般字元則原樣輸出。 輸出項的參數除了常數、變數外還可以是運算式、函數調用。 %g,%f和%e這三個格式用於列印浮點值。 %g格式用於列印那些不需要按列對齊的浮點數特別有用。其作用有二: 一,去掉該數尾多餘的零(沒有達到六位的數) 二,保留六位有效數字(多餘六位的) %e格式用於列印浮點數時,一律顯示地使用指數形式:例如:輸出圓周率時是:3.141593e+00 兩者的區別: %g格式列印出的數是總共6位有效數字 %e格式列印出小數點後的6位有效數字 %f禁止使用指數形式來表示浮點數。因此圓周率輸出為:3.141593 (但注意它的精度要求:也是小數點後6位有效數字) (8)%%格式用於列印一個%字元。 (9)%E和%G只是在輸出時用大寫字母(E)代替了小寫字母(e) 輸出加號或減號的技巧,例如: printf("%+d %+d %+d\n",-5,0,5); 只要在中間加個“+”號就行。作用是輸出符號位(即,數的加號或減號) 如果不希望正數的前面出現‘+’號,可用下面的方法 只要在中間加個“ ”號(即:空格)就行。例如: 作用:如果一個數是非負數,就在它的前面插入一個空格。 int i; for(i=-3;i<=3;i++) printf("% d\n",i); //注意%和d之間有一個空格 sscanf()的提示: 分解字串,很多功能都需要Regex的知識,所以就介紹一下最簡單的幾種用sscanf來分解字串 的用法。 1. char str[100],str1[100],str2[100]; gets(str); sscanf(str,”%s%s”,str1,str2); 將讀入的一整行字串按空格,定位字元或斷行符號符分割成兩個字串。 2 取指定長度的字串。如在下例中,取最大長度為4位元組的字串。 sscanf("123456 ", "%4s", str); 基本整型:兩個位元組,十六個bit(位) 11 11 11 11 11 11 11 11 等於 65535. 11 11 11 11 11 11 11 10 等於 -2. 負數的第一位(符號位)為1。負數的補碼怎麼得到:原碼取反加一。2的位元為:00 00 00 00 00 00 00 10,取反就等於11 11 11 11 11 11 11 01,然後加1,位元逢二進一,所以就得出-2 的二進位代碼。 有符號的整型數可以用 %d 輸出。 無符號的整型數可以用 %u 輸出。 電腦裡存的數字都是位元,最高位是符號位還是資料位元,可以由輸出格式符來控制。 位元轉換八位元:三個 1 對應一個 7 。 位元鏨十六進位數:四位二進位對應一位十六進位,四個1 對應一個 f。 說明: 格式字元:c 輸出一個字元。 s 輸出一個字串。 e 以指數形式輸出實型數。 f 以小數形式輸出實型數。 g 自動決定輸出格式為e和f中較短的一種,不列印無效的零。 % 輸出%。 注意:對於單精確度數,使用 %f 格式符輸出時,僅前7位是有效數字,小數6位。 對於雙精確度數,使用 %lf 格式符輸出時,前16位是有效數字,小數6位。 長度修正符 l:對整型指定長整型long 例:%ld , %lx , %lo , %lu 對實型指定雙精確度double 例:%lf h:只用於整型的格式字元修正為short 例:%hd , %hx , %ho , %hu 格式輸出字元:printf 使用:向終端輸出若干個類型任意的資料。 形式:printf (格式控制符,輸出資料行表) 說明: 格式控制符:% 格式說明引導符。 - 指定靠左對齊輸出。 0 指定空位填零。 m.n 指定輸出域寬度及精度。 l.h 輸出長度的修正。 格式字元 指定輸出的資料類型。 說明: 格式字元:指定輸出項的資料類型和輸出格式。 d 有符號十進位整數。 o 無符號八位元。 x 無符號十六進位數。(小寫x格式中用小寫字母a,b,c,d,e,f來表示10到15之間的數,大寫的X則用大寫的ABCDEF來表示10到15之間的數) u 不帶符號的十進位整數。 |