#include <string>
#include <iostream>
#include <cfloat>
#include <cassert>

int main()
{
char *end;
float f1 = strtof("1.0000000596046448", &end);
float f2 = std::stof("1.0000000596046448");
float f3 = (float) std::stod("1.0000000596046448");

  std::cout << "f1 - 1 = " << f1 - 1 << "\n";
  std::cout << "f2 - 1 = " << f2 - 1 << "\n";
  std::cout << "f3 - 1 = " << f3 - 1 << "\n";
}
