Biblioteca C - <locale.h>
los locale.hEl encabezado define la configuración específica de la ubicación, como los formatos de fecha y los símbolos de moneda. Encontrarás varias macros definidas junto con una estructura importantestruct lconv y dos funciones importantes que se enumeran a continuación.
Macros de biblioteca
Las siguientes son las macros definidas en el encabezado y estas macros se utilizarán en dos funciones que se enumeran a continuación:
No Señor. | Macro y descripción |
---|---|
1 | LC_ALL Configura todo. |
2 | LC_COLLATE Afecta las funciones strcoll y strxfrm. |
3 | LC_CTYPE Afecta todas las funciones de los personajes. |
4 | LC_MONETARY Afecta la información monetaria proporcionada por la función localeconv. |
5 | LC_NUMERIC Afecta el formato del punto decimal y la información proporcionada por la función localeconv. |
6 | LC_TIME Afecta la función strftime. |
Funciones de biblioteca
A continuación se muestran las funciones definidas en la configuración regional del encabezado.
No Señor. | Función descriptiva |
---|---|
1 | char * setlocale (categoría int, const char * locale) Establece o lee información dependiente de la ubicación. |
2 | struct lconv * localeconv (void) Establece o lee información dependiente de la ubicación. |
Estructura de la biblioteca
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
A continuación se muestra la descripción de cada uno de los campos:
No Señor. | Campo Descripción |
---|---|
1 | decimal_point Carácter de punto decimal utilizado para valores no monetarios. |
2 | thousands_sep El carácter separador de miles de lugares se utiliza para valores no monetarios. |
3 | grouping Cadena que indica el tamaño de cada grupo de dígitos en cantidades no monetarias. Cada carácter representa un valor entero, que designa el número de dígitos del grupo actual. Un valor de 0 significa que el valor anterior se utilizará para el resto de los grupos. |
4 | int_curr_symbol Es una cadena de los símbolos de moneda internacional utilizados. Los primeros tres caracteres son los especificados por ISO 4217: 1987 y el cuarto es el carácter, que separa el símbolo de la moneda de la cantidad monetaria. |
5 | currency_symbol El símbolo local utilizado para la moneda. |
6 | mon_decimal_point El carácter de coma decimal utilizado para valores monetarios. |
7 | mon_thousands_sep El carácter de agrupación de miles de lugares utilizado para valores monetarios. |
8 | mon_grouping Cadena cuyos elementos definen el tamaño de la agrupación de dígitos en valores monetarios. Cada carácter representa un valor entero que designa el número de dígitos del grupo actual. Un valor de 0 significa que el valor anterior se utilizará para el resto de los grupos. |
9 | positive_sign Carácter utilizado para valores monetarios positivos. |
10 | negative_sign Carácter utilizado para valores monetarios negativos. |
11 | int_frac_digits Número de dígitos que se mostrarán después del punto decimal en valores monetarios internacionales. |
12 | frac_digits Número de dígitos que se mostrarán después del punto decimal en valores monetarios. |
13 | p_cs_precedes Si es igual a 1, el símbolo de moneda aparece antes de un valor monetario positivo. Si es igual a 0, el símbolo de moneda aparece después de un valor monetario positivo. |
14 | p_sep_by_space Si es igual a 1, el símbolo de moneda está separado por un espacio de un valor monetario positivo. Si es igual a 0, entonces no hay espacio entre el símbolo de moneda y un valor monetario positivo. |
15 | n_cs_precedes Si es igual a 1, el símbolo de moneda precede a un valor monetario negativo. Si es igual a 0, el símbolo de moneda reemplaza a un valor monetario negativo. |
dieciséis | n_sep_by_space Si es igual a 1, el símbolo de moneda está separado por un espacio de un valor monetario negativo. Si es igual a 0, entonces no hay espacio entre el símbolo de moneda y un valor monetario negativo. |
17 | p_sign_posn Representa la posición del signo_positivo en un valor monetario positivo. |
18 | n_sign_posn Representa la posición del signo_negativo en un valor monetario negativo. |
Los siguientes valores se utilizan para p_sign_posn y n_sign_posn -
Valor | Descripción |
---|---|
0 | Los paréntesis encapsulan el valor y el símbolo de moneda. |
1 | El signo precede al valor y al símbolo de moneda. |
2 | El signo sucede al valor y al símbolo de moneda. |
3 | El signo precede inmediatamente al valor y al símbolo de moneda. |
4 | El signo sucede inmediatamente al valor y al símbolo de moneda. |