C語言佔位符及printf格式說明

2021-10-06 11:57:57 字數 2143 閱讀 6028

1.首先說一下什麼是佔位符,大家看到的%d、%f等都是佔位符,簡單來說就是每種資料型別對應相關的佔位符。
2.佔位符有哪寫?

%d //以十進位制整型格式

%i //以十進位制整型格式

%ld //以十進位製長整型(long int)格式

%lld //以十進位制長長整型(long long int)格式

%u //以無符號十進位制整型格式

%c //以字元格式

%f //以float型格式輸出

%lf //以double型格式輸出

%e //以指數格式

%le //以指數格式

%e //以指數格式

%le //以指數格式

%g //%e或%f的縮短版

%g //%e的縮短版

%s //以字串格式

%o //以無符號八進位制整型格式

%ho //以八進位制短整型格式輸出

%p //以位址格式

%x //以無符號十六進製制整型格式(小x輸出的十六進製制為小寫的)

%x //以無符號十六進製制整型格式(大x輸出的十六進製制為大寫的)

%hd //以短整型格式

%hu //以無符號短整型格式

%lu //以無符號長整型格式

3.格式輸出控制(以下的m和n都是整數)

%+md /*按照指定寬度m輸出十進位制整型資料,如果資料實際寬度大於m則按照實際輸出,小於m

則按照右對齊(+表示右對齊)輸出,+通常省略不寫*/

%-md /*按照指定寬度m輸出十進位制整形資料,如果資料實際寬度大於m則按照實際輸出,小於m

則按照左對齊(-表示左對齊)輸出,-不能省略*/

%+mc //按照指定寬度m輸出字元,+通常省略不寫,+表示右對齊

%-mc //按照指定寬度m輸出字元,不能省略,-表示左對齊

%+mf /*按照包括小數點在內的資料寬度m輸出浮點型資料,當m大於實際資料寬度時,右對齊,+通常省略

當m小於實際資料寬度時,將以實際數值輸出*/

%-mf /*按照包括小數點在內的資料寬度m輸出浮點型資料,當m大於實際資料寬度時,左對齊,-不能省略

當m小於實際資料寬度時,將以實際數值輸出*/

%.nf /*按照指定小數點後的輸出寬度輸出浮點型資料,當n大於實際資料有效位數時,右邊補0,當n小於

實際資料有效位數時採用四捨五入處理*/

%+m.nf /*按照指定包括小數點在內的資料輸出全部寬度,當m大於輸出資料全部資料寬度時,左邊補空格,

當m小於輸出全部資料寬度時,將按照實際寬度輸出,注意:使用這種格式輸出時,將優先考慮n的

值,即在滿足n的值基礎上再判斷m對資料輸出的影響。當m小於n時,則m對輸出資料不起作用*/

%-m.nf /*按照指定包括小數點在內的資料輸出全部寬度,當m大於輸出資料全部資料寬度時,右邊邊補空格,

當m小於輸出全部資料寬度時,將按照實際寬度輸出,注意:使用這種格式輸出時,將優先考慮n的

值,即在滿足n的值基礎上再判斷m對資料輸出的影響。當m小於n時,則m對輸出資料不起作用*/

%+ms /*按照輸出寬度為m列的字串輸出字串,當m小於實際的字串長度時,將按實際字串輸出

當m大於實際字串長度時m時,左補空格*/

%-ms /*按照輸出寬度為m列的字串輸出字串,當m小於實際的字串長度時,將按實際字串輸出

當m大於實際字串長度時m時,右補空格*/

%+m.ns /*按照指定輸出字串的長度m輸出字串,當m大於實際字串長度時,輸出的字串左補空格,

當m小於等於實際字串長度時,將按實際字串輸出。n用於指定輸出左邊n個字元,當n大於實際

字串長度時,將按實際字串輸出。當m小於n時,忽略m的作用*/

%-m.ns /*按照指定輸出字串的長度m輸出字串,當m大於實際字串長度時,輸出的字串右補空格,

當m小於等於實際字串長度時,將按實際字串輸出。n用於指定輸出左邊n個字元,當n大於實際

字串長度時,將按實際字串輸出。當m小於n時,忽略m的作用*/

%.ns /*用於輸出字串左邊n個字元,當n大於實際字串長度時,按實際字串輸出*/

C語言佔位符 格式佔位符

d,i 代表整數,f 浮點數,s 字串,c char.p 指標,fl 長log,e 科學計數法,g 小數或科學計數法。a,a讀入乙個浮點值 僅c99有效 c讀入乙個字元 d讀入十進位制整數 i讀入十進位制,八進位制,十六進製制整數 o讀入八進位制整數 x,x讀入十六進製制整數 s讀入乙個字串,遇空格...

golang fmt格式「佔位符」

golang 的fmt 包實現了格式化i o函式,類似於c的 printf 和 scanf。定義示例型別和變數type humanstructvar people human 普通佔位符佔位符說明舉例輸出 v 相應值的預設格式。printf v people v 列印結構體時,會新增欄位名print...

golang fmt格式「佔位符」

golang 的fmt 包實現了格式化i o函式,類似於c的 printf 和 scanf。定義示例型別和變數type humanstructvar people human 普通佔位符佔位符說明舉例輸出 v 相應值的預設格式。printf v people v 列印結構體時,會新增欄位名print...