I am working c++ project where I am getting double value as string and need to convert that value to type double and then compare the same to some double value . I am pasting the code snippet below which has the same issue -
int main()
{   
    string doubleValueInString= "+1.00000000E-07";
    
    double valueInDouble  = stod(doubleValueInString);
    
    double e = 1.000000000000e-9;
    
    double valueInEngineeeringNot = 100*e;
    
    if(valueInDouble  ==valueInEngineeeringNot)
    {
        int i = 0; // should come here 
    }
}
Actually in above code my if loop should be executed but control is not getting inside if loops since "valueInDouble" and "valueInEngineeringNot" are not equal. ValueInDouble = 9.9999999999999995e-08 ValueInEngineeringNot =1.0000000000000001e-07
Does c++ have any better way to deal with double or am I doing something wrong ?
