黑马程序员技术交流社区

标题: printf格式化输出的问题 [打印本页]

作者: hngdlll    时间: 2015-11-19 22:23
标题: printf格式化输出的问题
刚才看到了大神的对于printf格式化输出的解释。%06d中的0是在输出是前面用0来补充。难道用什么来补充字节数可以自己设定吗?可以设置成任意的数字或者字母吗?对这个有点好奇,希望大神门能给解释一下。
作者: Tmac90301    时间: 2015-11-19 23:56
只有0和空格。不可以指定其他的。指定域宽的时候,0只能跟正的域宽

而普通指定域宽可正可负,多出来的位用空格填补

例如 a=3  用printf打印 %5d,结果先输出4个空格,再打印3
                                %-5d,先打印3,再打印4个空格
                                %05d,先打印4个0,再打印3
                                  不可以先打印3,再打4个0,这样的话会打成30000,肯定是错的  
作者: 正在输入中...    时间: 2015-11-20 00:07
“第一位只能是0,如果是其他的值就变成%16d,就是另外的意思了”这是我原帖中的话,如果是%16d不就是16位的软约束了嘛?没仔细看?还有如果有问题直接在下面的帖子回复下就可以看到,会给你解答的。。。
作者: yanggangcl    时间: 2015-11-20 08:34
域宽和在左边填充0都是为了格式,要是加其他数字岂不把人家给改变了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2