printf格式化输出
%c:字符
%i:整数(老)
%d:整数
%ld:长整型(long int)
%Ld:长整型(long long int)
%hd:短整形(short int)
%e:浮点数、e-记数法(指数形式)
%E:浮点数、E-记数法(指数形式)
%f:浮点数(%nf,n表示小数点后n位)
%g、%G:浮点数(自动选择合适的格式)
%o:八进制数
%s:字符串
%S :宽字符(=%ws)
%x:十六进制数
%X:大写十六进制
%p:指针
%u:无符号整数
%%:打印百分号
%zu:size_t
%a: 浮点数、十六进制、p-记数法
%A:大写浮点数、十六进制、P-记数法
格式化输出#
%#x 十六进制
%#b 二进制
%#o 8进制
宽字符
wchar_t w = 'A';
printf("wchar_t: %C\n", w);
# ./a.out
wchar_t: A
宽字节
http://blog.csdn.net/zhangxuechao_/article/details/71188953
二进制、八进制
http://blog.csdn.net/zhangxuechao_/article/details/70919914
p-记数法
float f = 3.1415926;
printf("p: %a\n", f);
printf("P: %a\n", f);
# ./a.out
p: 0x1.921fb4p+1
P: 0x1.921fb4p+1
%e、%f、%g
float f = 3.1415926;
printf("e: %e\n", f);
printf("f: %f\n", f);
printf("g: %g\n", f);
# ./a.out
e: 3.141593e+00
f: 3.141593
g: 3.14159
可变参数输出
printf("%*.*s\n", m, n, str);
m :总宽度
n:输出个数
char *str = "hello";
printf("%*.*s\n", 4, 2, str);
# ./a.out
he
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!