Возможный дубликат:
Разница между я ++ и ++ я в цикле?
Может кто-нибудь объяснить, в чем разница между ними:
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
какую-либо разницу?