我有一个数字需要与 3 个字符串进行比较。该号码的长度永远不会超过 3 位数字。
例如,我需要将 3、300 和 13 与“003”、“300”和“013”等字符串进行比较。
我认为最简单的比较方法是,如果我可以将整数转换为字符串格式,然后使用 strcmp
将“003”与“003”进行比较。
我只是不确定如何确定需要填充多少个字符,尤其是如何正确分配和转换。
有什么建议吗?我在想我可以检查一下 number - 100 < 0
.如果是,则意味着需要填充数字而不仅仅是转换。我也可以做 number - 10 < 0
看看它是不是像 13
这样的数字或 3
.所以我可以确定要填充的零的确切数量,但在那之后我就迷路了。
最佳答案
I think the easiest way to compare would be if I could get the ints into their string format, and then use strcmp to compare '003' to '003'
我认为最简单的方法是使用 strtoul
并将字符串转换为整数。
3 == strtoul("003", NULL, 10);
关于c - int 到填充零字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8979385/