C++: How to round a double to an int?
add 0.5 before casting (if x > 0) or subtract 0.5 (if x < 0), because the compiler will always truncate. C++11 also introduces std::round, which likely uses a similar logic of adding 0.5 to |x| under the hood (see the link if interested) but is obviously more robust. A follow up question might be why the float … Read more