在我的代码中,我有一个看起来像这样的 for 循环:
for(unsigned int n=10; n > 1; --n)
{
std::cout << n << std::endl;
}
我期望输出:
9、8、7、6、5、4、3、2、1
我得到的输出:
10, 9, 8, 7, 6, 5, 4, 3, 2
我在使用 gnu/g++ 时得到了预期的输出,但在 MSVC 2010 中没有。
我知道我通过执行以下操作获得了该循环的预期结果:
for(unsigned int n=9; n > 0; n--)
{
std::cout << n << std::endl;
}
有没有其他人得到这种行为,或者我是否以某种方式意外地抛出了某种魔法开关?