printf函式稱為格式輸出函式,其關鍵字最末乙個字母f即為「格式」(format)之意。其功能是按使用者指定的格式,把指定的資料顯示到顯示器螢幕上。printf函式是乙個標準庫函式,它的函式原型在標頭檔案「stdio.h」中。
但作為乙個特例,不要求在使用 printf 函式之前必須包含stdio.h檔案。printf函式呼叫的一般形式為:
printf(「格式控制字串」, 輸出表列)
其中格式控制字串用於指定輸出格式。格式控制串可由格式字串和非格式字串兩種組成。格式字串是以%開頭的字串,在%後面跟有各種格式字元,以說明輸出資料的型別、形式、長度、小數字數等。如:
非格式字串原樣輸出,在顯示中起提示作用。輸出表列中給出了各個輸出項,要求格式字串和各輸出項在數量和型別上應該一一對應。
在turbo c中格式字串的一般形式為:
[標誌][輸出最小寬度][.精度][長度]型別。
其中方括號中的項為可選項。
各項的意義介紹如下。
1) 型別
型別字元用以表示輸出資料的型別,其格式符和意義如下表所示:
格式字元意義d
以十進位制形式輸出帶符號整數(正數不輸出符號)
o以八進位制形式輸出無符號整數(不輸出字首0)
x,x以十六進製制形式輸出無符號整數(不輸出字首ox)
u以十進位制形式輸出無符號整數
f以小數形式輸出單、雙精度實數
e,e以指數形式輸出單、雙精度實數
g,g以%f或%e中較短的輸出寬度輸出單、雙精度實數
c輸出單個字元
s輸出字串
2) 標誌
標誌字元為 -、+、# 和空格四種,其意義下表所示:
標 志意義-
結果左對齊,右邊填空格
+輸出符號(正號或負號)
空格輸出值為正時冠以空格,為負時冠以負號
#對c、s、d、u類無影響;
對o類,在輸出時加字首o;
對x類,在輸出時加字首0x;
對e、g、f 類當結果有小數時才給出小數點。
3) 輸出最小寬度
用十進位制整數來表示輸出的最少位數。若實際位數多於定義的寬度,則按實際位數輸出,若實際位數少於定義的寬度則補以空格或0。
4) 精度
精度格式符以「.」開頭,後跟十進位制整數。本項的意義是:如果輸出數字,則表示小數的位數;如果輸出的是字元,則表示輸出字元的個數;若實際位數大於所定義的精度數,則截去超過的部分。
5) 長度
長度格式符為h、l兩種,h表示按短整型量輸出,l表示按長整型量輸出。
格式輸出函式printf
1 格式輸出函式的一般形式 函式原型 int printf char format argument,函式功能 按規定格式向輸出裝置 一般為顯示器 輸出資料,並返回實際輸出的字元數,若出錯,則返回負數。它使用的一般形式為 printf 格式控制字串 輸出項列表 語句中 輸出項列表 列出要輸出的表示式...
printf 函式引數格式詳解
printf的格式控制的完整格式 0 m.n l或h 格式字元 下面對組成格式說明的各項加以說明 表示格式說明的起始符號,不可缺少。有 表示左對齊輸出,如省略表示右對齊輸出。0 有0表示指定空位填0,如省略表示指定空位不填。m.n m指域寬,即對應的輸出項在輸出裝置上所佔的字元數。n指精度。用於說明...
printf格式輸出函式詳解
printf 格式控制字串 輸出表列 常用的格式有 d 表示按十進位制整型輸出 ld 表示按十進位製長整型輸出 c 表示按字元型輸出等。main d 以十進位制形式輸出帶符號整數 正數不輸出符號 o 以八進位制形式輸出無符號整數 不輸出字首 0 x,x 以十六進製制形式輸出無符號整數 不輸出字首 o...