为了账号安全,请及时绑定邮箱和手机立即绑定

打印以C为单位的0?

打印以C为单位的0?

C
拉丁的传说 2019-10-12 11:07:40
打印以C为单位的0?我正试图找到一种很好的打印前0的方法,比如01001的邮政编码。当这个数字被存储为1001的时候,有什么好的方法可以做到呢?我想使用任何一个case语句/if然后计算出这个数字是多少位数,然后将其转换为一个字符数组,再加上额外的0,以供打印,但我不得不认为,可能有一种方法可以用printf格式语法来避免我的操作。
查看完整描述

3 回答

?
一只甜甜圈

TA贡献1836条经验 获得超5个赞

printf("%05d", zipCode);


查看完整回答
反对 回复 2019-10-13
?
慕标5832272

TA贡献1966条经验 获得超4个赞

正确的解决方案是将邮政编码作为字符串存储在数据库中。尽管它看起来像一个数字,但它不是,它是一个代码,每个部分都有意义。

数字是你做算术的一件事。邮编不是那样的。


查看完整回答
反对 回复 2019-10-13
?
一只名叫tom的猫

TA贡献1906条经验 获得超3个赞

如果你在一台*尼克斯机器上:

man 3 printf

这将显示一个手册页面,类似于:

0值应为零填充。对于d,i,o,u,x,X,a,A,e,E,f,F,g和G变换,转换值在左边用零填充,而不是空白。如果0和-标志同时出现,则忽略0标志.如果用数字转换(d、i、o、u、x和x)给出精度,则忽略0标志。对于其他转换,行为是未定义的。

即使问题是针对C,这,这个页可能有帮助。



查看完整回答
反对 回复 2019-10-13
  • 3 回答
  • 0 关注
  • 445 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信