概念
C語言中的輸出控制符用于控制輸出結果的格式和布局
以下是基本符號的概念:
%?? ?//格式說明引導符。
-? ? //指定左對齊輸出。
0?? ? //指定空位填零。
m.n?//指定輸出域寬度及精度。
l.h ? //輸出長度的修正。
下面是一個使用實例:
#include?<stdio.h>
int?main()?{
? ??int?num =?30;
? ??float?pi =?3.14159;
? ??printf("%#xn", num); ??// 輸出 0x1e
? ??printf("%.2fn", pi); ??// 輸出 3.14
? ??printf("%-10sn",?"Hello");?// 左對齊字符串
? ??return?0;
}
常用的輸出控制符:
整數(shù)類型
%d
?或?%i
:輸出有符號十進制整數(shù)
%u
:輸出無符號十進制整數(shù)
%o
:輸出無符號八進制整數(shù)(不帶前綴)
%x
?或?%X
:輸出無符號十六進制整數(shù)(小寫或大寫字母,不帶前綴)
%#o
?或?%#x
?或?%#X
:帶前綴的八進制或十六進制輸出(如?0x1e
)
%hd
、%ld
、%lld
:分別輸出?short
、long
、long long
?類型
浮點數(shù)類型
%f
?或?%lf
:輸出十進制浮點數(shù)(默認保留6位小數(shù))
%e
?或?%E
:科學計數(shù)法輸出浮點數(shù)(如?3.14e1
)
%g
?或?%G
:自動選擇?%f
?或?%e
?格式(省略末尾的零)
%a
?或?%A
:輸出浮點數(shù)的十六進制表示(如?0x1.5p1
,C99支持)
字符和字符串
%c
:輸出單個字符
%s
:輸出字符串(以??結尾的字符數(shù)組)
指針和特殊符號
%p
:輸出指針地址(十六進制格式)
%%
:輸出?%
?符號本身
格式修飾符
對齊與填充
%-5d
:左對齊,寬度為5,不足用空格填充
%05d
:右對齊,寬度為5,不足用?0
?填充
%+d
:強制顯示正負號
寬度與精度
%5d
:輸出至少5字符寬,右對齊
%.2f
:保留2位小數(shù)
%10.3f
:總寬度10字符,保留3位小數(shù)
%*.*f
:動態(tài)指定寬度和精度(如?printf("%*.*f", 8, 3, 3.14159)
)
其他標志
%#x
:十六進制帶前綴?0x
% hd
?或?% lld
:指定?short
?或?long long
?類型
你好,我是Allen康哥,CSDN嵌入式領域博客專家,知乎嵌入式領域優(yōu)質答主,嵌入式技術垂直領域粉絲15萬+。現(xiàn)任世界500強外企高級軟件開發(fā)工程師,有多年國企和外企嵌入式行業(yè)工作經(jīng)驗,擅長嵌入式行業(yè)學習規(guī)劃,單片機和嵌入式Linux學習規(guī)劃,嵌入式硬件轉軟件學習規(guī)劃,簡歷及offer咨詢,報考/考研咨詢等,歡迎留言交流!