<charconv>
Convertissez rapidement une séquence de caractères en entier ou en valeur à virgule flottante, et d’une autre façon. L’une des façons d’utiliser cette bibliothèque consiste à écrire et à arrondir des valeurs à virgule flottante dans des fichiers JSON et texte.
Les fonctions de conversion sont paramétrées pour les performances et prennent également en charge le comportement le plus court-aller-retour. Le comportement aller-retour le plus court signifie qu’un nombre est converti en caractères, seule une précision suffisante est écrite pour permettre de récupérer le nombre d’origine lors de la conversion de ces caractères en virgule flottante. Aucune autre fonction CRT ou STL ne fournit cette fonctionnalité.
Voici quelques-uns des avantages de l’utilisation de la <charconv>
bibliothèque :
- La séquence de caractères représentant une valeur numérique n’a pas besoin d’être terminée par null. De même, lorsqu’un nombre est converti en caractères, le résultat n’est pas terminé par null.
- Les fonctions de conversion n’allouent pas de mémoire. Vous êtes propriétaire de la mémoire tampon dans tous les cas.
- Les fonctions de conversion ne lèvent pas. Ils retournent une structure qui contient des informations d’erreur.
- Les conversions ne respectent pas le mode arrondi du runtime.
- Les conversions ne sont pas conscientes des paramètres régionaux. Ils impriment et analysent toujours les décimales comme « . » ne sont jamais « , » pour les paramètres régionaux qui utilisent des virgules.
Spécifications
Header :<charconv>
Espace de noms : std
/std:c++17
ou version ultérieure est nécessaire.
Membres
Types
Type | Description |
---|---|
chars_format | Spécifie le type de mise en forme tel que scientifique, hexadécimal, etc. |
from_chars_result | Contient le résultat d’une from_chars conversion. |
to_chars_result | Contient le résultat d’une to_chars conversion. |
Functions
Fonction | Description |
---|---|
from_chars | Convertissez des caractères en entier, float ou double. |
to_chars | Convertissez un entier, float ou double en caractères. |