我注意到一件非常奇怪的事情。在下面的代码片段中,Console 上输出的结果总是0
int result = 0;
for(int i = 1; i < 4; i++)
{
result *= 10 + i;
}
Console.WriteLine(result);
它看起来result *= 10 + i;
总是10
与result
(where result
is 0
) 相乘,而不是相加i
。
如果我只改变乘法线......
int result = 0;
for(int i = 1; i < 4; i++)
{
result = result * 10 + i;
}
Console.WriteLine(result);
这会在控制台上输出正确result
的 - 即123
.
我的问题是,为什么result *= 10 + i;
不能正常工作 - 并且总是给出result
as 0
?