标签: c++
为什么以下for - 循环计算floor(log_2(m)),而不是ceil(log_2(m))(这是我预期的那样)?
for
floor(log_2(m))
ceil(log_2(m))
for (int m = <some number>; m > 1; m /= 2) //<some number> is integer >= 0 cout << “Here\n”;
答案 0 :(得分:2)
例如,当3和2都是整数时,3/2为1,循环将终止而不考虑分数。所以你得到log_2(3)= 1。