Возможный дубликат:
Разница между я ++ и ++ я в цикле?
Может кто-нибудь объяснить, в чем разница между ними:
for(unsigned col = 0; col < n; ++col, num_to_fill >>= 1U)
{
for(unsigned row = num_to_fill; row < (1U << n); row += (num_to_fill * 2))
{
std::fill_n(&output[col][row], num_to_fill, 1);
}
}
и
for(unsigned col = 0; col < n; col++, num_to_fill >>= 1U)
{
for(unsigned row = num_to_fill; row < (1U << n); row += (num_to_fill * 2))
{
std::fill_n(&output[col][row], num_to_fill, 1);
}
}
Когда col=0, In ex.1 Output[col][row] будет output[1][row], а In ex.2 Output[col][row] будет output[0][row]. Я прав?
Вопрос 2: Использует ли >>= 1U вместо /= 2 какую-либо разницу?