Delphi环境出问题

很奇怪的问题,用strtofloat始终得不到正确的值。

var
  i:Double;
begin
  i := StrToFloat(edt1.Text);
//  i := StrToFloat('93.33');
end;

i的值始终是一个很大的值。即使我把注释掉的语句使用了,也还是不会改变i的值
难道是我的delphi出问题了?想不通。


/* - - - - - - - - - - - - - - - - - - - -*/
找到原因了,很简单,编译器优化!
因为这段测试代码中还未使用i去做什么操作,所以i的值还不会变
只有开始使用i了,才会改变i的值。
比如加上
  if i-93.332>0.001 then
  MessageBox(0,'ok','ok',MB_OK);

你可能感兴趣的:(Delphi)