Richtiger Vergleich von floating-point-Werten

#include <math.h> // für fabs()

float f1 = 0.11111111111;
float f2 = 0.1111111111;

// um Rundungsfehler zu umgehen sollte man mit einer
// Epsilon-Schranke (minimaler Abstand) arbeiten
// im Beispiel beträgt diese Schranke 1E-5
if (fabs(f1 - f2) < 1E-5)
{
    // f1 gleich f2
}

// verbesserte Version:
if (fabs(f1 - f2) < 1E-5 * f1)
{
    // f1 gleich f2
}