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)             Podręcznik linuksowego programisty             LOCALE(7)



NAZWA

       locale - opis obsługi wielu języków

SKŁADNIA

       #include <locale.h>

OPIS

       Locale  to zestaw reguł językowych i kulturalnych. Obejmują one aspekty
       takie, jak język komunikatów, różne zestawy znaków, konwencje  leksyko-
       graficzne  itd.  Program  musi umieć określić swoje locale i zachowywać
       się odpowiednio, aby można go było przenieść do innych kultur.

       Nagłówek <locale.h> deklaruje typy danych, funkcje i makra przydatne  w
       tym przedsięwzięciu.

       Funkcje  deklarowane  to  setlocale(),  ustawiająca  bieżące  locale, i
       localeconv(), pobierająca informacje o formatowaniu liczb.

       Istnieją różne kategorie informacji regionalnych,  których  potrzebować
       może  program; zadeklarowane są one jako makra. Używając ich jako pier-
       wszy argument funkcji setlocale(), możliwe jest  ustawienie  na  żądane
       locale jednego z poniższych makr:

       LC_COLLATE
              Używane  do  zmiany  zachowania  funkcji  strcoll() i strxfrm(),
              które używane są do porównywania łańcuchów w alfabecie lokalnym.
              Na przykład niemieckie scharfes s sortowane jest jako "ss".

       LC_CTYPE
              Zmienia  zachowanie  operacji  na  znakach  i funkcji klasyfika-
              cyjnych,  takich  jak  isupper()  i  toupper(),  oraz  znakowych
              funkcji wielobajtowych, takich jak mblen() i wctomb().

       LC_MONETARY
              Zmienia  informację  zwracaną  przez localeconv(), która opisuje
              sposób, w jaki zwykle drukowane są liczby, ze szczegółami takimi
              jak kropka dziesiętna kontra przecinek dziesiętny. Informacja ta
              jest używana wewnętrznie przez funkcję strfmon().

       LC_MESSAGES
              Zmienia język, w którym wyświetlane są komunikaty, oraz to,  jak
              wygląda odpowiedź twierdząca i przecząca.  Biblioteka GNU C zaw-
              iera funkcje gettext(), ngettext() oraz  rpmatch(),  ułatwiające
              użycie  tych informacji. Funkcje GNU z rodziny gettext biorą pod
              uwagę również zmienną środowiska LANGUAGE.

       LC_NUMERIC
              Zmienia informacje używane  przez  rodzinę  funkcji  printf()  i
              scanf(),  kiedy  radzi  im  się,  żeby  używały ustawień locale.
              Informacja ta może być także odczytana funkcją localeconv().

       LC_TIME
              Zmienia zachowanie funkcji  strftime(),  wyświetlającej  bieżący
              czas  w  formie  lokalnie  akceptowalnej; na przykład, większość
              Europy używa zegara 24-godzinnego, podczas gdy w USA  używa  się
              12-godzinnego.

       LC_ALL Wszystko powyżej.

       Jeśli  drugim  argumentem setlocale() jest łańcuch pusty "" oznaczający
       locale domyślne, ustala się je wedle poniższych kroków:

       1.     Jeśli istnieje niepusta  zmienna  środowiskowa  LC_ALL,  używana
              jest wartość LC_ALL

       2.     Jeśli  istnieje i jest niepusta zmienna środowiskowa o tej samej
              nazwie co jedna z kategorii powyżej, dla tej  kategorii  używana
              jest jej wartość.

       3.     Jeśli  istnieje niepusta zmienna środowiskowa LANG, używana jest
              wartość LANG

       Wartości dotyczące lokalnego  formatowania  dostępne  są  w  strukturze
       lconv,  zwracanej  przez  funkcję  localeconv().  lconv  ma następującą
       deklarację:

         struct lconv {

           /* Informacja numeryczna (nie-walutowa) */

           char *decimal_point;     /* Znak dziesiętny  */
           char *thousands_sep;     /* Separator tysięcy  */
           char *grouping; /* Każdy element to liczba cyfr w danej grupie,
                              elementy z większymi indeksami są bardziej
                              na lewo. Element o wartości CHAR_MAX oznacza,
                              że nie następuje dalsze grupowanie. Element
                              o wartości 0 oznacza, że dla wszystkich
                              grup bardziej na lewo używany jest element
                              poprzedni. */

           /* Pozostałe pola zawierają informacje o walucie */

             char *int_curr_symbol; /* Pierwsze trzy znaki to symbol waluty
                                        z ISO 4217. Czwarty znak to
                                        separator.  Piąty to ' '. */
           char *currency_symbol;   /* Symbol lokalnej waluty  */
           char *mon_decimal_point; /* Znak dziesiętny  */
           char *mon_thousands_sep; /* Separator tysięcy  */
           char *mon_grouping;      /* Jak element 'grupujący' (wyżej)  */
           char *positive_sign;     /* Znak dla wartości dodatnich  */
           char *negative_sign;     /* Znak dla wartości ujemnych  */
           char  int_frac_digits;   /* Międzynar. cyfry dziesiętne  */
           char  frac_digits;       /* Lokalne cyfry dziesiętne  */
           char  p_cs_precedes;     /* 1, jeśli symbol waluty poprzedza wartość
                                       dodatnią, 0, jeśli następuje po niej */
           char  p_sep_by_space;    /* 1, jeśli symbol waluty oddziela
                                       od wartości dodatniej spacja */
           char  n_cs_precedes;     /* 1, jeśli symbol waluty poprzedza wartość
                                       ujemną, 0 jeśli następuje po niej */
           char  n_sep_by_space;    /* 1, jeśli symbol waluty oddziela
                                      od wartości ujemnej spacja */
           /* Dodatnie i ujemne pozycje znaku:
              0 Wartość i symbol waluty w nawiasach.
              1 Znak poprzedza wartość i symbol waluty.
              2 Znak następuje po wartości i symbolu waluty.
              3 Znak następuje tuż przez symbolem waluty.
              4 Znak następuje tuż po symbolu waluty. */
           char p_sign_posn;
           char n_sign_posn;
         };

ZGODNE Z

       POSIX.1

       Funkcje GNU gettext są zdefiniowane w LI18NUX2000.

ZOBACZ TAKŻE

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



Linux                             1993-04-24                         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.