Java中%ld的C ++等效于String.format()


Answers:


98

您可能已经解决了,不必指定l标志。根据docsd就像在C ++中一样,指定了一个十进制整数。所以答案是公正的%d


如果您尝试打印的值太长,%d将无法满足要求。在这种情况下,您必须对其进行解析。
Milli 2010年

3
@Milli:虽然我不确定第一个句子(不要认为签名是一个考虑因素),但我只是通过实验确认了%d将正确格式化longs!
卡尔·斯莫特里奇

你是对的!我的不好。我在同一条语句中也有很长的字符串。错误是由%d%d引起的,而应该是%d%s。谢谢Andrzej!
米里

1
@CarlSmotricz是正确的,签名与它无关。我清理了问题以将其删除。
Eloff 2014年

如果将“ l”标志与“ d”标志(例如,%ld)一起使用(在Java 7上演示),则String.format()将在运行时引发java.util.UnknownFormatConversionException。
sdenham 2014年

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.