System.AnsiStringBase.FloatToStrF

De RAD Studio API Documentation
Aller à : navigation, rechercher

C++

static AnsiStringBase FloatToStrF(long double value,
                                             TStringFloatFormat format,
                                             int precision, int digits,
                                             int codePage);

Propriétés

Type Visibilité  Source Unité  Parent
function public dstring.h System AnsiStringBase

Description

Renvoie la représentation chaîne d'une valeur à virgule flottante.

Le paramètre format définit le format de la chaîne résultante. Le paramètre precision donne la précision de la valeur spécifiée. Il doit valoir au plus 7 pour les valeurs de type float, au plus 15 pour les valeurs de type double et au plus 18 pour les valeurs de type Extended. La signification du paramètre digits dépend du format particulier sélectionné.

Le tableau ci-dessous donne les valeurs possibles pour le paramètre format ainsi que leur signification.



Valeur Signification

sffGeneral

Format numérique général. La valeur est convertie en une chaîne décimale la plus courte possible en utilisant le format fixe ou scientifique. Les caractères zéro sont supprimés de la fin de la chaîne résultante et la virgule décimale n'apparaît que si elle est nécessaire. La chaîne résultante utilise le format fixe si le nombre de chiffres à gauche de la virgule est inférieur ou égal à la précision indiquée et si la valeur est supérieure ou égale à 0,00001. Sinon, la chaîne résultante utilise le format scientifique, et le paramètre digits spécifie le nombre minimal de chiffres de l'exposant (entre 0 et 4).

sffExponent

Format scientifique. La valeur est convertie en une chaîne de la forme "-d.ddd...E+dddd". La chaîne résultante commence par un signe moins si le nombre est négatif, et la virgule décimale est toujours précédée d'un chiffre. Le nombre total de chiffres dans la chaîne résultante (y compris avant la virgule décimale) est donné par le paramètre precision. La caractère d'exposant "E" dans la chaîne résultante est toujours suivi d'un signe plus ou moins et de quatre chiffres au maximum. Le paramètre digits spécifie le nombre minimal de chiffres dans l'exposant (entre 0 et 4).

sffFixed

Format à virgule fixe. La valeur est convertie en une chaîne de la forme "-ddd.ddd...". La chaîne résultante commence par un signe moins si le nombre est négatif, et la virgule décimale est toujours précédée d'au moins un chiffre. Le nombre de chiffres qui suivent la virgule décimale est donné par le paramètre digits -- il doit être compris entre 0 et 18. Si le nombre de chiffres à gauche de la virgule décimale est supérieur à la précision spécifiée, la valeur résultante utilisera le format scientifique.

sffNumber

Format numérique. La valeur est convertie en une chaîne de la forme "-d,ddd,ddd.ddd...". Le format sffNumber est identique au format sffFixed, mis à part que la chaîne résultante contient des séparateurs de milliers.

sffCurrency

Format monétaire. La valeur est convertie en une chaîne représentant un montant monétaire. La conversion est contrôlée par les variables globales CurrencyString, CurrencyFormat, NegCurrFormat, ThousandSeparator et DecimalSeparator, qui sont toutes initialisées à partir de Symbole monétaire dans la section Paramètres régionaux du Panneau de configuration Windows. Le nombre de chiffres après la virgule décimale est donné par le paramètre Digits -- il doit être compris entre 0 et 18.



Quel que soit le format, les deux caractères utilisés comme séparateur décimal et séparateur des milliers sont respectivement définis par les variables globales DecimalSeparator et ThousandSeparator.

Si la valeur est un NAN (valeur non numérique), la chaîne résultante est 'NAN'. Si une valeur correspond à plus l'infini, la chaîne résultante est 'INF'. Si une valeur est moins l'infini, la chaîne résultante est '-INF'.