var
  str:='123.123';如何把str转成一个float 123.123?
我用strtofloat  会变成123.12...............
 

解决方案 »

  1.   

    var
      a:real;
    begin
      a:=strtofloat(str);
      a:=format('%.3f',a);
    end;
     你试试吧,应该可以的
      

  2.   


    procedure TForm1.Button1Click(Sender: TObject);
    var
      str:String;
    begin
      str:='123.123';
      showmessage(floattostr(strtofloat(str)));
    end;xp2+D7上 验证通过,结果是 123.123
      

  3.   

    如果小数点后的精度过高..可能会出现这个情况...但是小数点后三位应该不会吧..难道你用的是real?
      

  4.   

    a:=strtofloat(str);
      a:=format('%.3f',a);
      

  5.   

    formatfloat('0.000',123.123);
    -----------------------------------------
    这样写不错~~