title: Standard library to_string(double) giving wrong value in vs2015 . Is there any solution?
body: <p>In Vs2013 to_string function std::to_string(1.0e+30) provides the output 1000000000000000000000000000000.000000</p>
  
  <p>In Vs2015 to_string function std::to_string(1.0e+30) provides the output 1000000000000000019884624838656.000000</p>
  
  <p>If it is with standard library issue is there any fix or patch available for it?</p>
  
  <p>I searched for this problem and encountered an article explains <a href="https://groups.google.com/a/isocpp.org/forum/#!topic/std-discussion/6xhWgsEuvPo" rel="nofollow noreferrer">https://groups.google.com/a/isocpp.org/forum/#!topic/std-discussion/6xhWgsEuvPo</a> 
  to_string has bug in float or double convertion . </p>
  
  <pre><code>double d = 1.0000000000000000e+30;
  std::string s = std::to_string(d);
  if (s.length())
  {
      s;
  }
  </code></pre>
  
  <p>here s give value as 1000000000000000019884624838656.000000</p>
  
  <p>Expected result is 1000000000000000000000000000000.000000 which gives in vs2013 but not in vs2015</p>