わたなべです。

"U.Nakamura" <usa / osb.att.ne.jp> writes:

> sample/test.rbに追加された、
> 
> > s = "3.7517675036461267e+17"
> > test_ok(s == sprintf("%.16e", s.to_f))
> 
> ですが、mswin32では(というかMSVCRTでは)、sprintfの結果が
> 
>   "3.7517675036461267e+017"
> 
> となるため失敗します。
> どうするのが望ましいでしょうか?

これはutil.cのruby_strtod()をテストするために追加されたわけで、
to_fが使われていればよさそうです。
  f = 3.7517675036461267e+17
  test_ok(f == sprintf("%.16e", f).to_f)
でどうでしょう?

-- 
わたなべひろふみ