Provided by: manpages-fr-dev_4.13-4_all 

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 ou unités de mesure américaines) (*)
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, "");
lors de son initialisation, en utilisant les valeurs renvoyées par localeconv(3) pour les informations
dépendant de paramètres régionaux, en utilisant les fonctions de traitement des chaînes de caractères
larges et multioctets si MB_CUR_MAX > 1, et en utilisant strcoll(3), wcscoll(3), strxfrm(3) ou wcsxfrm(3)
pour comparer les chaînes de caractères.
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).
┌─────────────┬──────────────────────┬────────────────────────────┐
│ Interface │ Attribut │ Valeur │
├─────────────┼──────────────────────┼────────────────────────────┤
│ 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.10 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 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.
GNU 15 septembre 2017 SETLOCALE(3)