关于printf输出各种类型的问题

d d d: 以十进制形式输出 32 32 32位带符号整数
u u u: 以十进制形式输出 32 32 32位无符号整数

注:输出bool类型时也是按整形输出的

l l d lld lld:以十进制形式输出 64 64 64位带符号整数
l l u llu llu:以十进制形式输出 64 64 64位无符号整数

o o o: 以八进制形式输出无符号整数
x x x: 以十六进制形式输出无符号整数

f f f: 以小数形式输出单精度实数
l f lf lf:以小数形式输出双精度实数
L f Lf Lf:以小数形式输出 l o n g long long d o u b l e double double

e e e: 以科学计数法形式输出单、双精度实数
g g g: 以 % f \%f %f % e \%e %e中较短的输出宽度输出单、双精度实数(可以认为是去掉末尾多余的 0 0 0)

c c c: 输出单个字符
s s s: 输出字符串


又:可以在 % \% %和字母之间插进数字表示最大场宽。

如: % 3 d \%3d %3d 表示输出3位整型数,不够则 3 3 3位右对齐。

% 7.3 f \%7.3f %7.3f 表示输出场宽为 7 7 7的浮点数, 其中小数位数为 3 3 3, 整数位数为 7 7 7,不够 7 7 7位右对齐。

% 5 s \%5s %5s 表示输出 5 5 5个字符的字符串, 不够 5 5 5个字符右对齐。

如果字符串的长度、或整型数位数超过说明的场宽,将按其实际长度输出。

但是浮点数的小数部分长度如果超过了场宽,则按说明的场宽四舍五入输出。

若想在输出值前加以 0 0 0补齐,就应在场宽前加个 0 0 0

如: % 06 d \%06d %06d 表示在输出一个小于 6 6 6位的数值时, 将在前面补 0 0 0使其总宽度为 6 6 6位。

如果输出字符串,小数点后的数字代表最大宽度,小数点前的数字代表最小宽度。

如: % 3.7 s \%3.7s %3.7s 表示显示一个长度不小于 3 3 3且不大于 7 7 7的字符串。若大于 7 7 7,则第 7 7 7个字符以后的内容将不会输出。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值