我正试图找到一种打印前导0
的好方法,比如01001
代表ZIP Code.虽然数字将存储为1001
,但有什么好办法?
我曾想过使用case
条语句或if
来计算数字的位数,然后将其转换为char
数组,再加上额外的0
以供打印,但我不禁想到,也许有一种方法可以使用printf
格式语法来实现这一点,而我却无法做到这一点.
我正试图找到一种打印前导0
的好方法,比如01001
代表ZIP Code.虽然数字将存储为1001
,但有什么好办法?
我曾想过使用case
条语句或if
来计算数字的位数,然后将其转换为char
数组,再加上额外的0
以供打印,但我不禁想到,也许有一种方法可以使用printf
格式语法来实现这一点,而我却无法做到这一点.
printf("%05d", zipCode);
0
表示填充的内容,5
表示整数的宽度.
示例1:如果使用"%02d"
(对日期很有用),则在"1"列中,数字只需填充零.例如,06
而不是6
.
示例2:"%03d"
将为1列中的一个数字填充2个零,为10列中的数字填充1个0.例如,数字7填充到007
,数字17填充到017
.