Provided by: manpages-fr-dev_4.15.0-9_all bug

NOM

       setlocale - Définir les paramètres régionaux courants

SYNOPSIS

       #include <locale.h>

       char *setlocale(int catégorie, const char *locale);

DESCRIPTION

       La  fonction  setlocale() permet de définir ou d'obtenir les paramètres régionaux courants
       du programme.

       Si locale n'est pas NULL, les paramètres régionaux courants du programme sont modifiés  en
       fonction  des  arguments.  L'argument  catégorie  détermine  quelle  partie des paramètres
       régionaux courants du programme seront concernés par la modification.

       Catégorie           Paramètres impactés
       LC_ALL              Tous les paramètres régionaux
       LC_ADDRESS          Mise en forme des adresses et des items relatifs à la géographie (*)
       LC_COLLATE          Ordre de tri des chaînes
       LC_CTYPE            Classification des caractères
       LC_IDENTIFICATION   Métadonnées décrivant les paramètres régionaux (*)
       LC_MEASUREMENT      Paramètres liés aux mesures (système métrique et mesures US) (*)
       LC_MESSAGES         Messages localisables en langue d'origine
       LC_MONETARY         Mise en forme des valeurs monétaires
       LC_NAME             Mise en forme des titres pour les personnes (*)
       LC_NUMERIC          Mise en forme des valeurs numériques non monétaires
       LC_PAPER            Paramètres liés au format de papier standard (*)
       LC_TELEPHONE        Formats à utiliser pour les services de téléphonie (*)
       LC_TIME             Mise en forme des valeurs de date et heure

       Les catégories avec une astérisque dans la table ci-dessus sont des extensions  GNU.  Pour
       plus d'informations sur ces catégories de paramètres régionaux, consultez locale(7).

       L'argument  locale est un pointeur sur une chaîne de caractères indiquant la configuration
       de la catégorie. Une telle chaîne peut être une constante  bien  connue,  comme  « C »  ou
       « fr_FR »  (voir  plus  bas)  ou une chaîne opaque renvoyée par un autre appel précédent à
       setlocale().

       Si locale est la chaîne vide (""),  chaque  partie  des  paramètres  régionaux  doit  être
       modifiée  en  fonction  des  variables d'environnement. Les détails varient en fonction de
       l'implémentation.  Pour  la  glibc,   (quelle  que  soit   la   catégorie)   la   variable
       d'environnement  LC_ALL  est  examinée  dans  un  premier  temps, puis c'est au tour de la
       variable d'environnement possédant le même  nom  que  la  catégorie  (consultez  la  table
       ci-dessus)  et  c'est  enfin  celui  de  la  variable  LANG.  C'est  la  première variable
       d'environnement définie qui est prise en compte. Si sa valeur n'est pas une  spécification
       de  paramètres  régionaux valable, les paramètres régionaux courants ne sont pas modifiés,
       et setlocale() renvoie NULL.

       Les paramètres régionaux « C » et « POSIX » sont portables et ils existent  sur  tous  les
       systèmes compatibles.

       Un     nom     de     paramètres     régionaux     est    typiquement    de    la    forme
       langue[_territoire][.codage][@modificateur], où langue est un code  linguistique  ISO 639,
       territoire  un  code  de  pays  ISO 3166  et codage un jeu de caractères ou un identifiant
       d'encodage comme ISO-8859-1 ou UTF-8.  Pour  obtenir  la  liste  de  tous  les  paramètres
       régionaux disponibles, utilisez la commande « locale -a » (voir locale(1)).

       Si locale est NULL, les paramètres régionaux courants sont consultés, mais pas modifiés.

       Au  démarrage du programme principal, la valeur de paramètres régionaux portable « C » est
       sélectionnée par défaut. Un programme peut être rendu portable pour  tous  les  paramètres
       régionaux en appelant :

           setlocale(LC_ALL, "");

       après l'initialisation du programme, puis :

       • en  utilisant  les  valeurs  renvoyées  par  un  appel  à localeconv(3) pour obtenir des
         informations dépendant des paramètres régionaux ;

       • en  utilisant  les  fonctions  de  traitement  des  textes  avec  caractères  larges  ou
         multioctets si MB_CUR_MAX > 1 ;

       • en utilisant strcoll(3) et strxfrm(3) pour comparer les chaînes ; et

       • en utilisant wcscoll(3) et wcsxfrm(3) pour comparer les chaînes à caractères larges.

VALEUR RENVOYÉE

       Un  appel  réussi  à  setlocale()  renvoie  une chaîne opaque correspondant aux paramètres
       régionaux. Cette chaîne peut être allouée statiquement. La chaîne renvoyée associée  à  la
       catégorie  considérée permet (à l'aide d'un appel ultérieur à setlocale()) de restituer la
       partie correspondante des paramètres régionaux du processus. La valeur renvoyée  est  NULL
       si la demande ne peut pas aboutir.

ATTRIBUTS

       Pour une explication des termes utilisés dans cette section, consulter attributes(7).

       ┌─────────────────────────────────────┬──────────────────────┬────────────────────────────┐
       │InterfaceAttributValeur                     │
       ├─────────────────────────────────────┼──────────────────────┼────────────────────────────┤
       │setlocale()                          │ Sécurité des threads │ MT-Unsafe const:locale env │
       └─────────────────────────────────────┴──────────────────────┴────────────────────────────┘

CONFORMITÉ

       POSIX.1-2001, POSIX.1-2008, C89, C99.

       Les  normes C  ne spécifient que les catégories LC_ALL, LC_COLLATE, LC_CTYPE, LC_MONETARY,
       LC_NUMERIC et LC_TIME. POSIX.1 y  ajoute  LC_MESSAGES.  Les  autres  catégories  sont  des
       extensions GNU.

VOIR AUSSI

       locale(1),    localedef(1),   isalpha(3),   localeconv(3),   nl_langinfo(3),   rpmatch(3),
       strcoll(3), strftime(3), charsets(7), locale(7)

COLOPHON

       Cette page fait partie de la publication 5.13 du projet man-pages Linux.  Une  description
       du  projet et des instructions pour signaler des anomalies et la dernière version de cette
       page peuvent être trouvées à l'adresse https://www.kernel.org/doc/man-pages/.

TRADUCTION

       La traduction française de cette  page  de  manuel  a  été  créée  par  Christophe  Blaess
       <https://www.blaess.fr/christophe/>,  Stéphan  Rafin  <stephan.rafin@laposte.net>, Thierry
       Vignaud <tvignaud@mandriva.com>, François Micaux, Alain  Portal  <aportal@univ-montp2.fr>,
       Jean-Philippe    Guérard   <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-
       luc.coulon@wanadoo.fr>,   Julien    Cristau    <jcristau@debian.org>,    Thomas    Huriaux
       <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin
       Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>,  Denis
       Barbier   <barbier@debian.org>,   David   Prévot   <david@tilapin.org>  et  Lucien  Gentis
       <lucien.gentis@waika9.com>

       Cette traduction est une documentation libre ; veuillez vous reporter  à  la  GNU  General
       Public   License   version 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  concernant  les
       conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un
       message à ⟨debian-l10n-french@lists.debian.org⟩.