[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] Reference for unit 'sysutils' (#rtl)

FloatToText

Return a string representation of a float, with a given format.

Declaration

Source position: line 0

function FloatToText(

  Buffer: PChar;

  Value: Extended;

  format: TFloatFormat;

  Precision: Integer;

  Digits: Integer

):LongInt;

function FloatToText(

  Buffer: PChar;

  Value: Extended;

  format: TFloatFormat;

  Precision: Integer;

  Digits: Integer;

  const FormatSettings: TFormatSettings

):LongInt;

Description

FloatToText converts the floating point variable Value to a string representation and stores it in Buffer. The conversion is governed by format, Precisison and Digits. more information on these parameters can be found in FloatToStrF. Buffer should point to enough space to hold the result. No checking on this is performed.

The result is the number of characters that was copied in Buffer.

Errors

None.

See also

FloatToStr

  

Convert a float value to a string using a fixed format.

FloatToStrF

  

Convert a float value to a string using a given format.

Example

Program Example68;

{ This program demonstrates the FloatToStrF function }

Uses sysutils;

Const Fmt : Array [TFloatFormat] of string[10] =
         ('general','exponent','fixed','number','Currency');

Procedure Testit (Value :  Extended);

Var I,J : longint;
    FF : TFloatFormat;
    S : ShortString;

begin
  For I:=5 to 15 do
    For J:=1 to 4 do
      For FF:=ffgeneral to ffcurrency do
        begin
        Write (Value,'(Prec: ',I:2,', Dig: ',J,', fmt : ',Fmt[ff],') : ');
        SetLength(S,FloatToText (@S[1],Value,FF,I,J));
        Writeln (S);
        Write (-Value,'(Prec: ',I:2,', Dig: ',J,', fmt : ',Fmt[ff],') : ');
        SetLength(S,FloatToText (@S[1],-Value,FF,I,J));
        Writeln (S);
        end;
end;

Begin
  Testit (1.1);
  Testit (1.1E1);
  Testit (1.1E-1);
  Testit (1.1E5);
  Testit (1.1E-5);
  Testit (1.1E10);
  Testit (1.1E-10);
  Testit (1.1E15);
  Testit (1.1E-15);
  Testit (1.1E100);
  Testit (1.1E-100);
End.
The latest version of this document can be found at lazarus-ccr.sourceforge.net.