C/C++格式控制符
一、類型
類型字符用以表示輸出數據的類型,其格式符和意義如下表所示:
格式字符 | 意義 |
---|---|
d | 以十進制形式輸出帶符號整數(正數不輸出符號) |
o | 以八進制形式輸出無符號整數(不輸出前綴0) |
x,X | 以十六進制形式輸出無符號整數(不輸出前綴Ox) |
u | 以十進制形式輸出無符號整數 |
f | 以小數形式輸出單、雙精度實數 |
e,E | 以指數形式輸出單、雙精度實數 |
g,G | 以%f或%e中較短的輸出寬度輸出單、雙精度實數 |
c | 輸出單個字符 |
s | 輸出字符串 |
p | 輸出指針 |
二、標志
標志字符為 -、+、# 和空格四種,其意義下表所示:
標 志 | 意義 |
---|---|
– | 結果左對齊,右邊填空格 |
+ | 輸出符號(正號或負號) |
空格 | 輸出值為正時冠以空格,為負時冠以負號 |
# | 對c、s、d、u類無影響; 對o類,在輸出時加前綴o; 對x類,在輸出時加前綴0x; 對e、g、f 類當結果有小數時才給出小數點。 |
三、輸出最小寬度
用十進制整數來表示輸出的最少位數。
若實際位數多於定義的寬度,則按實際位數輸出,若實際位數少於定義的寬度則補以空格或0。
四、精度
精度格式符以“.”開頭,后跟十進制整數。
本項的意義是:如果輸出數字,則表示小數的位數;如果輸出的是字符,則表示輸出字符的個數;若實際位數大於所定義的精度數,則截去超過的部分。
五、長度
長度格式符為h、l兩種,h表示按短整型量輸出,l表示按長整型量輸出。
特殊的:
要輸出%d
只需在前面再加上一個%
,要輸出\
只需在前面再加上一個\
,要輸出雙引號也只需在前面加上一個\
即可
%x、%X、%#x、%#X 四種用法輸出為:2f、 2F、 0x2f、 0X2F