Всем известно, что вы не должны сравнивать поплавки напрямую, а скорее используете допуск:
float a,b;
float epsilon = 1e-6f;
bool equal = (fabs(a-b) < epsilon);
Мне было интересно, если это относится к сравнению значения до нуля, прежде чем использовать его в разделе.
float a, b;
if (a != 0.0f) b = 1/a; // oops?
Нужно ли также сравнивать с epsilon в этом случае?