Provided by: manpages-de_1.4-1_all bug

BEZEICHNUNG

       locale - Beschreibung der Unterstützung für mehrere Sprachen

ÜBERSICHT

       #include <locale.h>

BESCHREIBUNG

       Eine  Locale  ist  ein  Satz von kulturellen und sprachlichen Regeln. Die Regeln behandeln
       Aspekte wie die Sprache  für  Meldungen,  unterschiedliche  Zeichensätze,  lexikografische
       Konventionen  usw.  Um in unterschiedlichen Kulturen eingesetzt werden zu können, muss ein
       Programm in der Lage sein, die Locale zu ermitteln und deren Regeln anzuwenden.

       Die Header-Datei <locale.h> deklariert für diese Aufgabe hilfreiche Datentypen, Funktionen
       und Makros.

       Sie  deklariert  die  Funktionen  setlocale(3)  für  das  Setzen  der aktuellen Locale und
       localeconv(3), welche Informationen über Zahlenformate beschafft.

       Es gibt unterschiedliche Kategorien für sprachspezifische Informationen, die ein  Programm
       benötigt.  Sie  sind  als Makros deklariert. Wenn sie als erstes Argument für setlocale(3)
       benutzt werden, ist es möglich, eine  dieser  Kategorien  auf  die  gewünschte  Locale  zu
       setzen:

       LC_COLLATE
              Dieses  Makro  ändert  das  Verhalten der Funktionen strcoll(3) und strxfrm(3), mit
              denen Zeichenketten gemäß des lokalen Alphabets  verglichen  werden.  Zum  Beispiel
              wird das deutsche scharfe s (ß) wie »ss« sortiert.

       LC_CTYPE
              Dieses     Makro    ändert    das    Verhalten    von    zeichenorientierten    und
              Klassifizierungs-Funktionen wie isupper(3) und toupper(3) sowie Funktionen für  die
              Bearbeitung von Multibyte-Zeichen wie mblen(3) oder wctomb(3).

       LC_MONETARY
              ändert   die   Informationen,  die  von  localeconv(3)  zurückgegeben  werden.  Sie
              beschreiben das Format, in dem Zahlen normalerweise  ausgegeben  werden,  inklusive
              Details  wie  Dezimalpunkt bzw. Dezimalkomma. Diese Informationen werden intern von
              der Funktion strfmon(3) benutzt.

       LC_MESSAGES
              ändert die Sprache, in der Meldungen angezeigt werden und  das  Aussehen  positiver
              oder  negativer  Antworten.  Um die Anwendung dieser Informationen zu vereinfachen,
              stellt die GNU-C-Bibliothek die Funktionen gettext(3), ngettext(3)  und  rpmatch(3)
              bereit.Die  Funktionenfamilie  GNU  gettext richtet sich nach der Umgebungsvariable
              LANGUAGE (enthält eine durch Doppelpunkte getrennte Liste von  Locales),  wenn  die
              Kategorie auf eine gültige, von »C« verschiedene Locale gesetzt ist.

       LC_NUMERIC
              ändert  die  Informationen,  die  von  den Funktionsfamilien printf(3) und scanf(3)
              benutzt  werden,  wenn  sie  die  Locale-Einstellungen   anwenden   sollen.   Diese
              Informationen können ebenfalls mit der Funktion localeconv(3) gelesen werden.

       LC_TIME
              ändert  das  Verhalten  der  Funktion strftime(3), um die aktuelle Uhrzeit in einem
              lokal akzeptablen Format anzuzeigen. In Europa  wird  zum  Beispiel  meistens  eine
              24-Stunden-Uhr benutzt, im Gegensatz zur 12-Stunden-Uhr in den Vereinigten Staaten.

       LC_ALL alles bisherige

       Wenn  das  zweite  Argument  von  setlocale(3)  für  die  vorgegebene  Locale  eine  leere
       Zeichenkette (empty string) »« ist, wird sie mit den folgenden Schritten ermittelt:

       1.     Wenn eine nicht leere Umgebungsvariable LC_ALL existiert, wird der Wert von  LC_ALL
              benutzt.

       2.     Wenn  eine  nicht  leere Umgebungsvariable mit dem gleichen Namen wie eine der oben
              genannten Kategorien existiert,  wird  ihr  Wert  für  die  gleichnamige  Kategorie
              verwendet.

       3.     Wenn eine nicht leere Umgebungsvariable LANG existiert, wird ihr Wert benutzt.

       Informationen  über  die lokale Formatierung von Zahlen liefert die Funktion localeconv(3)
       in der Datenstruktur struct lconv. Sie ist wie folgt deklariert:

         struct lconv {

          /* Numerische (nicht währungsbezogene) Informationen  */

           char *decimal_point;       /* Dezimal-Trennzeichen   */
           char *thousands_sep;       /* Tausender-Trennzeichen */
           char *grouping;
           /* Jedes Element entspricht der Anzahl von Ziffern in jeder
              Gruppe. Elemente mit einem höheren Index stehen weiter.
              links. Ein Element mit dem Wert CHAR_MAX bedeutet, dass
              keine weitere Gruppierung mehr stattfindet. Ein Element
              mit einem Wert von 0 bedeutet, dass das vorherige Element
              für alle Gruppen weiter links benutzt wird. */

           /* Die restlichen Felder enthalten Währungsinformationen. */

           /* Die ersten drei Zeichen stellen das Währungszeichen gemäß ISO
              4217 dar. Das vierte Zeichen ist das Trennzeichen, das fünfte
              Zeichen ist '\0'. */
           char *int_curr_symbol;
           char *currency_symbol;     /* lokales Währungssymbol            */
           char *mon_decimal_point;   /* Dezimal-Trennzeichen              */
           char *mon_thousands_sep;   /* Tausender-Trennzeichen            */
           char *mon_grouping;        /* Wie das »Grouping«-Element (oben) */
           char *positive_sign;       /* Vorzeichen für positive Werte     */
           char *negative_sign;       /* Vorzeichen für negative Werte     */
           char int_frac_digits;      /* internationale Zeichen für Brüche */
           char frac_digits;          /* lokale Zeichen für Brüche         */
           /* 1 wenn currency_symbol einem positiven Wert vorangestellt wird,
              0 wenn es nachgestellt wird */
           char p_cs_precedes;
           /* 1 wenn ein Leerzeichen currency_symbol von einem positiven
                Wert trennt               */
           char p_sep_by_space;
           /* 1 wenn currency_symbol einem negativen Wert vorangestellt wird,
              0 wenn es nachgestellt wird */
           char n_cs_precedes;
           /* 1 wenn ein Leerzeichen currency_symbol von einem negativen
                Wert trennt. */
           char n_sep_by_space;
           /* Positionen positiver und negativer Vorzeichen:
              0 Klammern umgeben die Menge und currency_symbol.
              1 Das Vorzeichen wird der Menge und currency_symbol vorangestellt.
              2 Das Vorzeichen wird der Menge und currency_symbol nachgestellt.
              3 Das Vorzeichen wird currency_symbol unmittelbar vorangestellt.
              4 Das Vorzeichen wird currency_symbol unmittelbar nachgestellt. */
           char p_sign_posn;
           char n_sign_posn;
         };

KONFORM ZU

       POSIX.1-2001.

       Die GNU-Gettext-Funktionen werden in LI18NUX2000 beschrieben.

SIEHE AUCH

       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)

KOLOPHON

       This  page  is  part  of release 3.54 of the Linux man-pages project. A description of the
       project,    and    information    about    reporting    bugs,    can    be    found     at
       http://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Schulze <joey@infodrom.org>
       und Martin Eberhard Schauer <Martin.E.Schauer@gmx.de> erstellt.

       Diese Übersetzung ist Freie Dokumentation;  lesen  Sie  die  GNU  General  Public  License
       Version   3  oder  neuer  bezüglich  der  Copyright-Bedingungen.  Es  wird  KEINE  HAFTUNG
       übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-
       Mail an <debian-l10n-german@lists.debian.org>.