Konverziós függvények lebegőpontos

Itt érték - az átváltandó értéket, Format - az egyik előre meghatározott formátumban. Bár ez a lehetőség megvan TFloatFormat típus, ez már sok köze van a fajta változás a formázás funkciót (azok kapcsolódnak a javasolt táblázatot). Precision paraméter határozza meg a karakterek száma az output string, és nem haladhatja meg a 7 az aktuális paramétert egységes, 15 - 18 és Twin - Extended. Számjegy - ez a paraméter értelmezi a függvény értékének Formátum:

Sci ffExponent formátum típus megfelel e Precision meghatározza a karakterek száma, számok -. A karakterek száma az exponens

ffFixed fixpontos formátum; Ez megfelel az F típusú. Precision meghatározza a karakterek száma, számok - tizedes helyek számát (0-18). Ha Precision kevés értéket képviselnek számokat tudományos formátumban.

ffGeneral generalizált formátumtípus megfelel d (cm. Format funkció leírás).

ffNumber eltér fTFixed jelenlétében határolók ezer (lásd. az átalakítás típusa, n).

ffCurrency Megfelel az átalakítás típusát t. A számjegyek a paraméter határozza meg a karakterek számát a tizedesvessző után a kimeneti vonal (0-18).

Abban az esetben, ha a funkció közvetített értékek értéket, amely különleges alkalmakkor koprocesszor ( „nem szám”, plusz és mínusz végtelen), illetve adja vissza a húr „NAN”, „INF” és „-INF”.

Végül, a képesség, hogy töltse ki a formátumot irányítási funkció lehetővé FormatFloat:

függvény FormatFloat (const Formátum: string; Érték: Extended): string;

Ez átalakítja a számot egy string összhangban formátumleíró szereplő paraméter formátuma. A szabályok meghatározzák az alábbiakat:

0 Golf számjegy. Ha a formázott értékét egy számjegy ebben a helyzetben, hogy be van helyezve, egyébként 0 van behelyezve.

# Golf számjegy. Ha a formázott értékét egy számjegy ebben a helyzetben, hogy be van helyezve, különben semmi nem kerül beillesztésre.

Golf tizedes pontossággal. Ez beszúr egy meghatározott állandó DecimalSeparator.

; Golf Ezreselválasztók. Ez azt jelenti, hogy egy csoport három számjegy, számítva a bal oldalon a tizedesvessző, egymástól egy speciális szimbólum (ez határozza meg az állandó ThousandSeparator). Hely mezőben lehet önkényes.

E +, E-, e + e- jelei képviseletét a számot tudományos formátumban. A megjelenése minden ilyen érvek azt jelenti, hogy a szám lesz lefordítva, hogy a jellemző, és a mantissza. Behelyezése után nullák ez az érv, hogy meghatározza a szélessége a mantissza. A különbség az E + E + E- és e, hogy az első két esetben hozott „+” megjelenítéséhez pozitív számok.

„Xx” „xx” karakterek idézőjelek vagy hagyományos, amelyet közvetlenül az output string.

; Megosztja formátumleírók pozitív, negatív és nulla számok.

1. A szám mindig felfelé kell kerekíteni a pontosság által meghatározott programozó, amely lehetővé teszi a mezők számát elhelyezésére számjegy ( „0” és „#”).

2. Ha a konvertált számot a bal oldalon a tizedesvessző nagyobb számjeggyel, mint az egyes meghatározott területeken befogadni őket, a számok még hozzáadódnak a sor. Ha a mező nem elég ahhoz, hogy a jogot a ponton nincs a kerekítést.

3. A szimbólum „;” Ez lehetővé teszi, hogy három különböző számok kimeneti formátuma különböző jeleket. Számának függvényében formátumokat használják a következők szerint:

• Egy: valamennyi szám;

• két: az első használják szám nagyobb vagy egyenlő nullával, akkor a második - negatív;

• Három: pervsh vonatkozik pozitív, a második - a negatív számok, és a harmadik - a nullához.

Ha a formátumok negatív számok vagy nulla üres, formátumot használja a pozitív számok.

Ha üres a formátumot pozitív számok, vagy általános formátumleíró nincs megadva (üres string), a számok szerint formázzuk általános formátum (mint FloatToStr funkció). Ezt a formátumot is használható, ha a számos jelentős számjegyek a bal oldalon a tizedesvessző nagyobb, mint 18, és nem kap a tudományos formátumban.

Alkalmazás specifikátor szemlélteti a táblázatban a példa konvertáló négy szám:

1 0 1234 -1234 0

Általános szabályok a kommunikáló vonalfunkcióval a következők:

• lehetővé tette mind a tudományos és fix formátumban;

• tizedesjelként kell szolgálnia lévő szimbólum DecimalSeparator;

• Nem engedélyezett ezer határoló karakterek (ThousandSeparator), valamint szimbólumok jelölik denezhnk egység.

Hiba esetén StrToFloat konverziós függvény kivételt dob ​​EConvertError egy TextToFloat - visszaadja az értéket False.