格式字元主要用於指定數據的輸出格式,它們由「%」符號和字元組成,在C語言中廣泛套用於`printf`和`scanf`等函式中。以下是一些常見的格式字元及其用途:
%d:用於輸出十進制整數。可以根據整型數據的實際長度輸出,或者指定輸出欄位的寬度(例如`%5d`表示輸出寬度為5個字元)。
%o:以八進制形式輸出整數。
%x或%X:以十六進制形式輸出整數。
%u:用來輸出無符號整型數據,以十進制形式輸出。
%c:用來輸出一個字元。
%s:用來輸出一個字元串。可以指定輸出欄位的寬度,如果字元串長度小於寬度,則左端補空格;如果大於寬度,則按實際長度輸出。
%f:用來輸出實數,以小數形式輸出。
%e:以指數形式輸出實數。
%g:根據數值的大小,自動選擇`%f`或`%e`格式輸出實數,且不輸出無意義的零。
%p:用於輸出變數地址。
此外,格式字元還可以與修飾符一起使用,以實現更複雜的格式化輸出。例如,`%5d`表示輸出的整數寬度為5個字元,如果數值位數不足,則左側補充空格以達到寬度要求。
在編程中,正確使用這些格式字元可以幫助確保數據以期望的方式顯示或輸入,避免數據溢出等問題。