Bibliothèque C - <locale.h>

le locale.hl'en-tête définit les paramètres spécifiques à l'emplacement, tels que les formats de date et les symboles monétaires. Vous trouverez plusieurs macros définies avec une structure importantestruct lconv et deux fonctions importantes énumérées ci-dessous.

Macros de bibliothèque

Voici les macros définies dans l'en-tête et ces macros seront utilisées dans deux fonctions répertoriées ci-dessous -

N ° Sr. Macro et description
1

LC_ALL

Définit tout.

2

LC_COLLATE

Affecte les fonctions strcoll et strxfrm.

3

LC_CTYPE

Affecte toutes les fonctions de caractère.

4

LC_MONETARY

Affecte les informations monétaires fournies par la fonction localeconv.

5

LC_NUMERIC

Affecte le formatage de la virgule décimale et les informations fournies par la fonction localeconv.

6

LC_TIME

Affecte la fonction strftime.

Fonctions de la bibliothèque

Voici les fonctions définies dans l'en-tête locale.h -

N ° Sr. Description de la fonction
1 char * setlocale (int category, const char * locale)

Définit ou lit les informations dépendant de l'emplacement.

2 struct lconv * localeconv (void)

Définit ou lit les informations dépendant de l'emplacement.

Structure de la bibliothèque

typedef struct {
   char *decimal_point;
   char *thousands_sep;
   char *grouping;	
   char *int_curr_symbol;
   char *currency_symbol;
   char *mon_decimal_point;
   char *mon_thousands_sep;
   char *mon_grouping;
   char *positive_sign;
   char *negative_sign;
   char int_frac_digits;
   char frac_digits;
   char p_cs_precedes;
   char p_sep_by_space;
   char n_cs_precedes;
   char n_sep_by_space;
   char p_sign_posn;
   char n_sign_posn;
} lconv

Voici la description de chacun des champs -

N ° Sr. Champ et description
1

decimal_point

Caractère de point décimal utilisé pour les valeurs non monétaires.

2

thousands_sep

Des milliers de caractères de séparation de lieu sont utilisés pour les valeurs non monétaires.

3

grouping

Chaîne qui indique la taille de chaque groupe de chiffres en quantités non monétaires. Chaque caractère représente une valeur entière, qui désigne le nombre de chiffres dans le groupe actuel. Une valeur de 0 signifie que la valeur précédente doit être utilisée pour le reste des groupes.

4

int_curr_symbol

Il s'agit d'une chaîne de symboles monétaires internationaux utilisés. Les trois premiers caractères sont ceux spécifiés par l'ISO 4217: 1987 et le quatrième est le caractère qui sépare le symbole monétaire de la quantité monétaire.

5

currency_symbol

Le symbole local utilisé pour la devise.

6

mon_decimal_point

Le caractère de point décimal utilisé pour les valeurs monétaires.

sept

mon_thousands_sep

Caractère de regroupement des milliers de places utilisé pour les valeurs monétaires.

8

mon_grouping

Chaîne dont les éléments définissent la taille du regroupement des chiffres en valeurs monétaires. Chaque caractère représente une valeur entière qui désigne le nombre de chiffres dans le groupe courant. Une valeur de 0 signifie que la valeur précédente doit être utilisée pour le reste des groupes.

9

positive_sign

Caractère utilisé pour les valeurs monétaires positives.

dix

negative_sign

Caractère utilisé pour les valeurs monétaires négatives.

11

int_frac_digits

Nombre de chiffres à afficher après la virgule décimale dans les valeurs monétaires internationales.

12

frac_digits

Nombre de chiffres à afficher après la virgule décimale dans les valeurs monétaires.

13

p_cs_precedes

Si égal à 1, alors le currency_symbol apparaît avant une valeur monétaire positive. Si égal à 0, le symbole currency_symbol apparaît après une valeur monétaire positive.

14

p_sep_by_space

Si égal à 1, alors le currency_symbol est séparé par un espace d'une valeur monétaire positive. Si égal à 0, alors il n'y a pas d'espace entre le symbole currency_symbol et une valeur monétaire positive.

15

n_cs_precedes

Si égal à 1, alors le currency_symbol précède une valeur monétaire négative. Si égal à 0, alors le currency_symbol succède à une valeur monétaire négative.

16

n_sep_by_space

Si égal à 1, alors le currency_symbol est séparé par un espace d'une valeur monétaire négative. Si égal à 0, alors il n'y a pas d'espace entre le symbole currency_symbol et une valeur monétaire négative.

17

p_sign_posn

Représente la position du signe positif dans une valeur monétaire positive.

18

n_sign_posn

Représente la position du signe négatif dans une valeur monétaire négative.

Les valeurs suivantes sont utilisées pour p_sign_posn et n_sign_posn -

Valeur La description
0 Les parenthèses encapsulent la valeur et le symbole currency_symbol.
1 Le signe précède la valeur et le symbole currency_symbol.
2 Le signe succède à la valeur et à la devise_symbole.
3 Le signe précède immédiatement la valeur et le symbole currency_symbol.
4 Le signe succède immédiatement à value et currency_symbol.