做的一个简单的浮点运算,代码:
var
 x,y:double;
begin
x:=strtofloat(edit1.Text);
y:=x*x+3*x-5;
edit1.Text:=floattostr(y);
end;
居然提示不是有效的:
Edit1不是一个有效的浮点值。进程停止!
delphi老是出现这样的问题呢?

解决方案 »

  1.   

    你在EDIT框中输入的不是浮点值,你输入12.356看看,我这正常
      

  2.   

    edit1框内应该输入数字和小数点,楼主可能不小心输入英文什么的了,所以会报错
      

  3.   


    var 
    x,y:double;
    beginx:=StrToFloatDef(edit1.Text,1);
    y:=x*x+3*x-5;
    edit1.Text:=floattostr(y);
    end;
    可以用StrToFloatDef给个异常数,或者用tryvar
    x,y:double;
    begin
      try
    x:=StrToFloat(edit1.Text);
      except
         Exit;
      end;
    y:=x*x+3*x-5;
    edit1.Text:=floattostr(y);
    end;
      

  4.   

    x:=strtofloat(TRIM(edit1.Text)); 
    有空格吧?