在 C 語言的 printf、scanf 等函數中,格式字符用於指定數據的輸入輸出格式。下表匯總了所有標準格式字符及其含義:
| 格式字符 | 含義 |
|---|---|
c | 輸出單個字符 |
d | 以十進制形式輸出帶符號整數(正數不輸出符號) |
e | 以指數形式輸出單、雙精度實數(小寫 e) |
E | 以指數形式輸出單、雙精度實數(大寫 E) |
f | 以小數形式輸出單、雙精度實數 |
g | 以 %f 或 %e 中較短的輸出寬度輸出實數;指數小於 -4 或大於等於精度時用 %e 格式 |
G | 同 g,但指數部分用大寫 E |
i | 有符號十進制整數(與 %d 相同) |
o | 以八進制形式輸出無符號整數(不輸出前綴 0) |
p | 輸出指針地址 |
s | 輸出字符串 |
x | 以十六進制形式輸出無符號整數(小寫,不輸出前綴 0x) |
X | 以十六進制形式輸出無符號整數(大寫,不輸出前綴 0X) |
u | 以十進制形式輸出無符號整數 |
-, +, 0, #, 空格)、寬度、精度等修飾符使用。%g/%G 會自動選擇定點或科學記數法,適合輸出範圍未知的浮點數。%p 輸出的地址格式取決於編譯器實現,通常為十六進制。