わたなべです。 "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) でどうでしょう? -- わたなべひろふみ