Provided by: manpages-es_1.55-10_all bug

NOMBRE

       locale - Descripción del soporte para múltiples idiomas

SINOPSIS

       #include <locale.h>

DESCRIPCIÓN

       Una  localización  (locale)  es un conjunto de reglas culturales e idiomáticas que abarcan
       aspectos tales como el idioma  usado  para  mensajes,  diferentes  juegos  de  caracteres,
       convenios  lexicográficos, etc. Un programa debe poder determinar su localización y actuar
       apropiadamente para poder ser transportado a diferentes culturas.

       El fichero de  cabecera  <locale.h>  declara  los  tipos  de  datos,  funciones  y  macros
       utilizados en esta tarea.

       Las  funciones  que  se declaran son setlocale() para establecer la localización actual, y
       localeconv() para obtener información acerca de formatos numéricos.

       Un programa puede  necesitar  varias  categorías  de  información  local,  las  cuales  se
       determinan  utilizando  macros.  Usando una de estas categorías como primer argumento para
       la función setlocale() es posible modificar uno de los siguientes atributos para que  usen
       la localización adecuada:

       LC_COLLATE
              Usado  para  cambiar  el comportamiento de las funciones strcoll() y strxfrm(), que
              comparan cadenas de caracteres usando el alfabeto local. Por ejemplo,  el  carácter
              Alemán ß (`ese aguda alemana') se alfabetiza como "ss".

       LC_TYPE
              Modifica  el comportamiento de las funciones que manipulan y clasifican caracteres,
              tales como isupper() y toupper(), y las funciones  de  caracteres  multi-byte  como
              mblen() o wctomb().

       LC_MONETARY
              Modifica  la  información  devuelta por localeconv() que describe el formato en que
              los números deben ser impresos, incluyendo detalles tales como el uso del  punto  o
              la coma decimal. Esta información es usada internamente por la función strfmon().

       LC_MESSAGES
              Cambia  el idioma en el que se muestran los mensajes, y cómo debe ser una respuesta
              afirmativa o negativa. La biblioteca de C de GNU contiene las funciones  gettext(),
              ngettext(),  y  rpmatch() para facilitar el uso de esta información. La familia GNU
              de funciones gettext también obedecen a la variable de entorno LANGUAGE.

       LC_NUMERIC
              cambia la información empleada por las familias de  funciones  printf()  y  scanf()
              cuando   se  les  informa  de  que  utilicen  las  características  locales.   Esta
              información también puede obtenerse con la función localeconv().

       LC_TIME
              Modifica el comportamiento de la función strftime() para  mostrar  la  hora  actual
              usando  el  formato local apropiado; por ejemplo, en casi toda Europa se utiliza el
              formato de 24 horas mientras que en Estados Unidos se emplea el de 12 horas.

       LC_ALL Todas las categorías anteriores.

       Si el segundo argumento de la función setlocale() es una  cadena  vacía,  "",  se  usa  la
       localización predeterminada. Esta localización se determina de la siguiente forma:

       1.     Si  la  variable  de  entorno  LC_ALL  existe y tiene un valor no nulo, se usa este
              valor.

       2.     Si existe una variable de entorno con el mismo nombre que una de las categorías,  y
              su valor es no nulo, se usa ese valor para dicha categoría.

       3.     Si la variable de entorno LANG, existe y su valor no es vacío, se usa dicho valor.

       Se  puede  obtener información sobre el formato numérico local usando la estructura struct
       lconv  devuelta  por  la  función  localeconv().   Dicha  estructura  tiene  la  siguiente
       declaración:

       struct lconv
       {
         /* Información numérica no monetaria. */

         char *decimal_point;        /* Caracter usado como punto decimal. */
         char *thousands_sep;        /* Separador de miles. */
         /* Cada elemento indica el número de dígitos en cada grupo;
            los elementos con índices altos están hacia la izquierda.
            Un elemento con valor CHAR_MAX indica que a partir de esa
            posición no se deben agrupar mas dígitos.
            Un elemento con valor 0 indica que se debe usar el elemento
            anterior para todos los grupos hacia la izquierda. */
         char *grouping;

         /* Información monetaria. */

         /* Los primeros tres caracteres son el símbolo monetario según
            ISO 4217. El cuarto caracter es el separador. El quinto
            caracter es ' '. */
         char *int_curr_symbol;
         char *currency_symbol;      /* Símbolo monetario local. */
         char *mon_decimal_point;    /* Caracter usado como punto decimal. */
         char *mon_thousands_sep;    /* Separador de miles. */
         char *mon_grouping;         /* Igual que el campo `grouping'(arriba) */
         char *positive_sign;        /* Signo para valores positivos. */
         char *negative_sign;        /* Signo para valores negativos. */
         char int_frac_digits;       /* Dígitos fraccionales internacionales. */
         char frac_digits;           /* Dígitos fraccionales locales. */
         char p_cs_precedes;         /* 1 si el símbolo monetario precede a un
                                          valor positivo, 0 si lo sucede. */

         char p_sep_by_space;        /* 1 si un espacio separa el símbolo
                                          monetario de un valor positivo. */

         char n_cs_precedes;         /* 1 si el símbolo monetario precede a
                                          un valor negativo, 0 si lo sucede. */

         char n_sep_by_space;        /* 1 si un espacio separa el símbolo
                                          monetario de un valor negativo. */

         /* Posiciones de los signos positivo y negativo:
            0 Paréntesis rodean a la cantidad y al símbolo monetario.
            1 El signo precede a la cantidad y al símbolo monetario.
            2 El signo sucede a la cantidad y al símbolo monetario.
            3 El signo precede en forma inmediata al símbolo monetario.
            4 El signo sucede en forma inmediata al símbolo monetario. */
         char p_sign_posn;
         char n_sign_posn;
       };

CONFORME A

       POSIX.1
       Las funciones gettext de GNU están especificadas en LI18NUX2000.

VÉASE TAMBIÉN

       setlocale(3),   localeconv(3),   locale(1),   localedef(1),   nl_langinfo(3),  gettext(3),
       ngettext(3), rpmatch(3), strfmon(3), strcoll(3), strxfrm(3), strftime(3)