std:: lconv
|
Défini dans l'en-tête
<clocale>
|
||
|
struct
lconv
;
|
||
La classe
std::lconv
contient les règles de formatage numérique et monétaire telles que définies par une locale C. Les objets de cette structure peuvent être obtenus avec
std::localeconv
. Les membres de
std::lconv
sont des valeurs de type
char
et de type
char
*
. Chaque membre
char
*
sauf
decimal_point
peut pointer vers un caractère nul (c'est-à-dire vers une chaîne C vide). Les membres de type
char
sont tous des nombres non négatifs, dont chacun peut être
CHAR_MAX
si la valeur correspondante n'est pas disponible dans la locale C actuelle.
Table des matières |
Objets membres
Paramètres de formatage numérique non monétaire
|
char*
decimal_point
|
le caractère utilisé comme séparateur décimal
(objet membre public) |
|
char*
thousands_sep
|
le caractère utilisé pour séparer les groupes de chiffres avant le séparateur décimal
(objet membre public) |
|
char*
grouping
|
une chaîne dont les éléments indiquent les tailles des groupes de chiffres
(objet membre public) |
Paramètres de formatage numérique monétaire
|
char*
mon_decimal_point
|
le caractère utilisé comme séparateur décimal
(objet membre public) |
|
char*
mon_thousands_sep
|
le caractère utilisé pour séparer les groupes de chiffres avant le séparateur décimal
(objet membre public) |
|
char*
mon_grouping
|
une chaîne dont les éléments indiquent la taille des groupes de chiffres
(objet membre public) |
|
char*
positive_sign
|
une chaîne utilisée pour indiquer une quantité monétaire non négative
(objet membre public) |
|
char*
negative_sign
|
une chaîne utilisée pour indiquer une quantité monétaire négative
(objet membre public) |
Paramètres de formatage numérique monétaire local
|
char*
currency_symbol
|
le symbole utilisé pour la devise dans la locale C actuelle
(objet membre public) |
|
char
frac_digits
|
le nombre de chiffres après la virgule décimale à afficher dans une quantité monétaire
(objet membre public) |
|
char
p_cs_precedes
|
1
si currency_symbol est placé avant une valeur non négative,
0
si après
(objet membre public) |
|
char
n_cs_precedes
|
1
si currency_symbol est placé avant une valeur négative,
0
si après
(objet membre public) |
|
char
p_sep_by_space
|
indique la séparation entre
currency_symbol
,
positive_sign
, et la valeur monétaire non négative
(objet membre public) |
|
char
n_sep_by_space
|
indique la séparation entre
currency_symbol
,
negative_sign
, et la valeur monétaire négative
(objet membre public) |
|
char
p_sign_posn
|
indique la position de
positive_sign
dans une valeur monétaire non négative
(objet membre public) |
|
char
n_sign_posn
|
indique la position de
negative_sign
dans une valeur monétaire négative
(objet membre public) |
Paramètres de formatage numérique monétaire international
|
char*
int_curr_symbol
|
la chaîne utilisée comme nom de devise internationale dans les paramètres régionaux C actuels
(objet membre public) |
|
char
int_frac_digits
|
le nombre de chiffres après la virgule décimale à afficher dans une quantité monétaire internationale
(objet membre public) |
|
char
int_p_cs_precedes
(C++11)
|
1
si int_curr_symbol est placé avant une valeur monétaire internationale non négative,
0
si après
(objet membre public) |
|
char
int_n_cs_precedes
(C++11)
|
1
si int_curr_symbol est placé avant une valeur monétaire internationale négative,
0
si après
(objet membre public) |
|
char
int_p_sep_by_space
(C++11)
|
indique la séparation de
int_curr_symbol
,
positive_sign
, et la valeur monétaire internationale non négative
(objet membre public) |
|
char
int_n_sep_by_space
(C++11)
|
indique la séparation de
int_curr_symbol
,
negative_sign
, et la valeur monétaire internationale négative
(objet membre public) |
|
char
int_p_sign_posn
(C++11)
|
indique la position de
positive_sign
dans une valeur monétaire internationale non négative
(objet membre public) |
|
char
int_n_sign_posn
(C++11)
|
indique la position de
negative_sign
dans une valeur monétaire internationale négative
(objet membre public) |
Les caractères des chaînes C pointées par
grouping
et
mon_grouping
sont interprétés selon leurs valeurs numériques. Lorsque le caractère de fin
'
\0
'
est rencontré, la dernière valeur vue est supposée se répéter pour le reste des chiffres. Si
CHAR_MAX
est rencontré, aucun chiffre supplémentaire n'est groupé. Le groupement typique de trois chiffres à la fois est
"
\003
"
.
Les valeurs de
p_sep_by_space
,
n_sep_by_space
,
int_p_sep_by_space
,
int_n_sep_by_space
sont interprétées comme suit :
| 0 | aucun espace ne sépare le symbole monétaire et la valeur |
| 1 | le signe reste collé au symbole monétaire, la valeur est séparée par un espace |
| 2 | le signe reste collé à la valeur. Le symbole monétaire est séparé par un espace |
Les valeurs de
p_sign_posn
,
n_sign_posn
,
int_p_sign_posn
,
int_n_sign_posn
sont interprétées comme suit :
| 0 | des parenthèses autour de la valeur et du symbole monétaire sont utilisées pour représenter le signe |
| 1 | signe avant la valeur et le symbole monétaire |
| 2 | signe après la valeur et le symbole monétaire |
| 3 | signe avant le symbole monétaire |
| 4 | signe après le symbole monétaire |
Exemple
#include <clocale> #include <iostream> int main() { std::setlocale(LC_ALL, "ja_JP.UTF-8"); std::lconv* lc = std::localeconv(); std::cout << "Japanese currency symbol: " << lc->currency_symbol << '(' << lc->int_curr_symbol << ")\n"; }
Sortie :
Japanese currency symbol: ¥(JPY )
Voir aussi
|
interroge les détails de formatage numérique et monétaire de la locale actuelle
(fonction) |
|
|
définit les règles de ponctuation numérique
(modèle de classe) |
|
|
définit les paramètres de formatage monétaire utilisés par
std::money_get
et
std::money_put
(modèle de classe) |
|
|
Documentation C
pour
lconv
|
|