Ruby printf输出解释

问题描述 投票:-3回答:1

有人可以帮我解释并解决这个问题并帮助我理解为什么它打印到1032?我特别感兴趣的是了解%和d\n。链接到解决此问题的主题也会有所帮助。

a = 10
b = 3.*(a).+(2)
printf("%d%d\n", a, b) ;
#output = 1032
ruby
1个回答
4
投票

为什么它等于1032

它不是。它做什么,它打印10号然后紧接着打32号(3 * 10 + 2的结果)。

学习区分这两者是至关重要的:表达式的实际值及其副作用(在本例中打印到控制台的文本)。

我对理解模数和d和\ n特别感兴趣

那些不是模数。 %d是格式说明符。表示“在此处打印整数”。阅读sprintf

© www.soinside.com 2019 - 2024. All rights reserved.