Available in

(1) (1)/fr (1posix) (3perl) (5) (5)/es (5)/fr (5)/it (5)/ja (5)/pl (5)/pt (5)/zh_CN (5)/zh_TW (7) (7)/cs (7)/de (7)/es (7)/fr (7)/hu (7)/it (7)/ja (7)/pl (7)/pt (7)/ru (7)/zh_CN (7)/zh_TW

TOC

LOCALE(7)                  Linux Programmer’s Manual                 LOCALE(7)



NOME

       locale - Descrizione del supporto multi-linguistico

SINTASSI

       #include <locale.h>

DESCRIZIONE

       Una localizzazione (locale, in inglese) è un insieme di regole linguis‐
       tiche e culturali che  coprono  campi  come  la  lingua  dei  messaggi,
       insiemi  di  caratteri,  convenzioni lessicografiche, ecc. Un programma
       deve poter determinare la sua localizzazione e agire di conseguenza per
       poter essere adattato a culture diverse.

       L’header <locale.h> dichiara i tipi di dati, funzioni e macro utili per
       questo scopo.

       Le funzioni che vengono dichiarate sono setlocale()  per  impostare  la
       localizzazione  corrente  e  localeconv() per ottenere informazioni sul
       modo di formattare i numeri.

       Le differenti categorie di informazioni  locali  di  cui  un  programma
       potrebbe  aver  bisogno  vengono  dichiarate  come macro. Usandole come
       primo argomento alla funzione setlocale()  è  possibile  impostare  una
       delle seguenti localizzazioni:

       LC_COLLATE
              viene  usato per modificare il comportamento delle funzioni str‐
              coll()  e  strxfrm(),  che  servono  per  confrontare   stringhe
              nell’alfabeto  locale. Ad esempio, la «ß» tedesca viene ordinata
              lessicograficamente come «ss».

       LC_CTYPE
              modifica il comportamento delle funzioni che maneggiano e  clas‐
              sificano  caratteri,  come  isupper() e toupper(), e le funzioni
              per caratteri multi-byte come mblen() o wctomb().

       LC_MONETARY
              cambia  l’informazione  restituita  da  localeconv(),  la  quale
              descrive  il  modo in cui i numeri vengono normalmente stampati,
              compresi dettagli come l’uso del punto o della virgola decimale.
              Questa  informazione  è  usata internamente dalla funzione strf‐
              mon().

       LC_MESSAGES
              cambia il linguaggio in cui i messaggi  vengono  mostrati  e  la
              forma  delle  risposte positive o negative. La libreria C di GNU
              contiene le funzioni  gettext(),  ngettext(),  e  rpmatch()  per
              facilitare l’impiego di queste informazioni. La famiglia di fun‐
              zioni GNU gettext rispetta anche la variabile LANGUAGE.

       LC_NUMERIC
              cambia l’informazione usata dalle famiglie di funzioni  printf()
              e  scanf(), quando viene loro richiesto di usare le impostazioni
              localizzate. Queste  informazioni  possono  anche  essere  lette
              tramite la funzione localeconv().

       LC_TIME
              modifica   il   comportamento  della  funzione  strftime()  onde
              mostrare l’ora in una forma localmente accettabile; per esempio,
              in  buona  parte d’Europa si usano le 24 ore, a differenza delle
              12 ore degli USA.

       LC_ALL Vale per tutte le macro precedenti.

       Se il secondo argomento a setlocale() è la stringa vuota "", allora  la
       localizzazione predefinita è determinata come segue:

       1.     Se  è  presente una variabile ambientale non nulla LC_ALL, viene
              usato il valore di LC_ALL.

       2.     Se una variabile ambientale con lo stesso nome di una delle cat‐
              egorie  precedenti  esiste  ed  è non nulla, il suo valore viene
              usato per quella categoria.

       3.     Se è presente una variabile ambientale  non  nulla  LANG,  viene
              usato il valore di LANG .

       I  valori che descrivono la formattazione locale dei numeri sono dispo‐
       bili in una struct lconv restituita dalla funzione localeconv(), che  è
       così dichiarata:

         struct lconv {

           /* Numeric (non-monetary) information */

           char *decimal_point;     /* Radix character */
           char *thousands_sep;     /* Separator for digit groups to left
                                       of radix character */
           char *grouping; /* Each element is the number of digits in a
                              group; elements with higher indices are
                              further left.  An element with value CHAR_MAX
                              means that no further grouping is done.  An
                              element with value 0 means that the previous
                              element is used for all groups further left. */

           /* Remaining fields are for monetary information */

           char *int_curr_symbol;   /* First three chars are a currency symbol
                                        from ISO 4217.  Fourth char is the
                                        separator.  Fifth char is ’ ’. */
           char *currency_symbol;   /* Local currency symbol */
           char *mon_decimal_point; /* Radix character */
           char *mon_thousands_sep; /* Like ‘thousands_sep’ above */
           char *mon_grouping;      /* Like ‘grouping’ above */
           char *positive_sign;     /* Sign for positive values */
           char *negative_sign;     /* Sign for negative values */
           char  int_frac_digits;   /* Int’l fractional digits */
           char  frac_digits;       /* Local fractional digits */
           char  p_cs_precedes;     /* 1 if currency_symbol precedes a
                                       positive value, 0 if succeeds */
           char  p_sep_by_space;    /* 1 if a space separates currency_symbol
                                       from a positive value */
           char  n_cs_precedes;     /* 1 if currency_symbol precedes a
                                       negative value, 0 if succeeds */
           char  n_sep_by_space;    /* 1 if a space separates currency_symbol
                                       from a negative value */
           /* Positive and negative sign positions:
              0 Parentheses surround the quantity and currency_symbol.
              1 The sign string precedes the quantity and currency_symbol.
              2 The sign string succeeds the quantity and currency_symbol.
              3 The sign string immediately precedes the currency_symbol.
              4 The sign string immediately succeeds the currency_symbol. */
           char  p_sign_posn;
           char  n_sign_posn;
         };

CONFORME A

       POSIX.1-2001.

       Le funzioni GNU gettext sono specificate in LI18NUX2000.

VEDERE ANCHE

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



Linux                           24 aprile 1993                       LOCALE(7)

COMMENTS

Add your comment here. Whitespace and linebreaks are preserved. URLs are linked automatically.
CAPTCHA

No HTML allowed. URLs will be linked with nofollow attribute. Whitespace is preserved.