淺談C說話本義字符和格局掌握符。本站提示廣大學習愛好者:(淺談C說話本義字符和格局掌握符)文章只能為提供參考,不一定能成為您想要的結果。以下是淺談C說話本義字符和格局掌握符正文
本義字符參考:
\a:蜂鳴,響鈴
\b:回退:向撤退退卻一格
\f:換頁
\n:換行,光標到下行行首
\r:回車,光標到本行行首
\t:程度制表
\v:垂直制表
\\:反斜槓
\':單引號
\":雙引號
\?:問號
\ddd:三位八進制
\xhh:二位十六進制
\0:空字符(NULL),甚麼都不做
注:
1,\v垂直制表和\f換頁符對屏幕沒有任何影響,但會影響打印機履行呼應操作。
2,\n其實應當叫回車換行。換行只是換一行,不轉變光標的橫坐標;回車只是回到行首,不轉變光標的縱坐標。
3,\t 光標向前挪動四格或八格,可以在編譯器裡設置
4,\' 在字符裡(即單引號裡)應用。在字符串裡(即雙引號裡)不須要,只需用 ' 便可。
5,\? 其實不用要。只需用 ? 便可以了(在windows VC6 和tc2 中驗證)。
格局掌握符參考:
格局輸入字符:printf
應用:向終端輸入若干個類型隨意率性的數據。
情勢:printf (格局掌握符,輸入列表)
解釋:
格局掌握符:% 格局解釋引誘符。
- 指定左對齊輸入。
0 指定空位填零。
m.n 指定輸入域寬度及精度。
l.h 輸入長度的修改。
格局字符 指定輸入的數據類型。
解釋:
格局字符:指定輸入項的數據類型和輸入格局。
d 有符號十進制整數。
o 無符號八進制數。
x 無符號十六進制數。(小寫的x格局頂用小寫字母a,b,c,d,e,f來表現10到15之間的數,年夜寫的X則用年夜寫的ABCDEF來表現10到15之間的數)
u 不帶符號的十進制整數。
根本整型:兩個字節,十六個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
對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()的應用技能:
分化字符串,許多功效都須要正則表達式的常識,所以就引見一下最簡略的幾種用sscanf來分化字符串 的用法。
1.
char str[100],str1[100],str2[100];
gets(str);
sscanf(str,”%s%s”,str1,str2);
將讀入的一整行字符串按空格,制表符或回車符朋分成兩個字符串。
2.
取指定長度的字符串。如鄙人例中,取最年夜長度為4字節的字符串。
sscanf("123456 ", "%4s", str);
以上這篇淺談C說話本義字符和格局掌握符就是小編分享給年夜家的全體內容了,願望能給年夜家一個參考,也願望年夜家多多支撐。