Convert a buffer to a float value.
Source position: sysstrh.inc line 212
function TextToFloat( |
Buffer: PChar; |
out Value: Extended |
):Boolean; |
Buffer: PChar; |
out Value: Extended; |
const FormatSettings: TFormatSettings |
):Boolean; |
Buffer: PChar; |
out Value; |
ValueType: TFloatValue |
):Boolean; |
Buffer: PChar; |
out Value; |
ValueType: TFloatValue; |
const FormatSettings: TFormatSettings |
):Boolean; |
TextToFloat converts the string in Buffer to a floating point value. Buffer should contain a valid string representation of a floating point value (either in decimal or scientific notation).
If the buffer contains a decimal value, then the decimal separator character must be the value of the DecimalSeparator variable.
Remark: | Note that this behaviour has changed, earlier implementations also allowed the use of '.' in addition to the decimal separator character. |
The function returns True if the conversion was successful.
If there is an invalid character in the buffer, then the function returns False
|
Convert a string to a floating-point value. |
|
|
Convert a float value to a string using a fixed format. |
|
|
Format a float according to a certain mask. |
Program Example91; { This program demonstrates the TextToFloat function } {$mode objfpc} {$h+ } Uses SysUtils; Const NrValues = 5; TestStr : Array[1..NrValues] of pchar = ('1,1','-0,2','1,2E-4','0','1E4'); Procedure Testit; Var I : Integer; E : Extended; begin Writeln('Using DecimalSeparator : ',DecimalSeparator); For I:=1 to NrValues do begin Writeln('Converting : ',TestStr[i]); If TextToFloat(TestStr[i],E) then Writeln('Converted value : ',E) else Writeln('Unable to convert value.'); end; end; Begin DecimalSeparator:=','; Testit; DecimalSeparator:='.'; Testit; End.