setlocale(3) Library Functions Manual setlocale(3) NOM setlocale - Definir les parametres regionaux courants BIBLIOTHEQUE Bibliotheque C standard (libc, -lc) SYNOPSIS #include char *setlocale(int categorie, const char *locale); DESCRIPTION La fonction setlocale() permet de definir ou d'obtenir les parametres regionaux courants du programme. Si locale n'est pas NULL, les parametres regionaux courants du programme sont modifies en fonction des arguments. L'argument categorie determine quelle partie des parametres regionaux courants du programme seront concernes par la modification. Categorie Parametres impactes LC_ALL Tous les parametres regionaux LC_ADDRESS Mise en forme des adresses et des items relatifs a la geographie (*) LC_COLLATE Ordre de tri des chaines LC_CTYPE Classification des caracteres LC_IDENTIFICATION Metadonnees decrivant les parametres regionaux (*) LC_MEASUREMENT Parametres lies aux mesures (systeme metrique et mesures US) (*) LC_MESSAGES Messages localisables en langue d'origine LC_MONETARY Mise en forme des valeurs monetaires LC_NAME Mise en forme des titres pour les personnes (*) LC_NUMERIC Mise en forme des valeurs numeriques non monetaires LC_PAPER Parametres lies au format de papier standard (*) LC_TELEPHONE Formats a utiliser pour les services de telephonie (*) LC_TIME Mise en forme des valeurs de date et heure Les categories avec une asterisque dans la table ci-dessus sont des extensions GNU. Pour plus d'informations sur ces categories de parametres regionaux, consultez locale(7). L'argument locale est un pointeur sur une chaine de caracteres indiquant la configuration de la categorie. Une telle chaine peut etre une constante bien connue, comme << C >> ou << fr_FR >> (voir plus bas) ou une chaine opaque renvoyee par un autre appel precedent a setlocale(). Si locale est la chaine vide (""), chaque partie des parametres regionaux doit etre modifiee en fonction des variables d'environnement. Les details varient en fonction de l'implementation. Pour la glibc, (quelle que soit la categorie) la variable d'environnement LC_ALL est examinee dans un premier temps, puis c'est au tour de la variable d'environnement possedant le meme nom que la categorie (consultez la table ci-dessus) et c'est enfin celui de la variable LANG. C'est la premiere variable d'environnement definie qui est prise en compte. Si sa valeur n'est pas une specification de parametres regionaux valable, les parametres regionaux courants ne sont pas modifies, et setlocale() renvoie NULL. Les parametres regionaux << C >> et << POSIX >> sont portables et ils existent sur tous les systemes compatibles. A locale name is typically of the form language[_territory][.codeset][@modifier], where language is an ISO 639 language code, territory is an ISO 3166 country code, and codeset is a character set or encoding identifier like ISO-8859-1 or UTF-8. For a list of all supported locales, try "locale -a" (see locale(1)). Si locale est NULL, les parametres regionaux courants sont consultes, mais pas modifies. Au demarrage du programme principal, la valeur de parametres regionaux portable << C >> est selectionnee par defaut. Un programme peut etre rendu portable pour tous les parametres regionaux en appelant : setlocale(LC_ALL, ""); apres l'initialisation du programme, puis : - en utilisant les valeurs renvoyees par un appel a localeconv(3) pour obtenir des informations dependant des parametres regionaux ; - en utilisant les fonctions de traitement des textes avec caracteres larges ou multioctets si MB_CUR_MAX > 1 ; - en utilisant strcoll(3) et strxfrm(3) pour comparer les chaines ; et - en utilisant wcscoll(3) et wcsxfrm(3) pour comparer les chaines a caracteres larges. VALEUR RENVOYEE Un appel reussi a setlocale() renvoie une chaine opaque correspondant aux parametres regionaux. Cette chaine peut etre allouee statiquement. La chaine renvoyee associee a la categorie consideree permet (a l'aide d'un appel ulterieur a setlocale()) de restituer la partie correspondante des parametres regionaux du processus. La valeur renvoyee est NULL si la demande ne peut pas aboutir. ATTRIBUTS Pour une explication des termes utilises dans cette section, consulter attributes(7). +--------------+--------------------------+----------------------------+ |Interface | Attribut | Valeur | +--------------+--------------------------+----------------------------+ |setlocale() | Securite des threads | MT-Unsafe const:locale env | +--------------+--------------------------+----------------------------+ STANDARDS C11, POSIX.1-2008. Categories LC_ALL LC_COLLATE LC_CTYPE LC_MONETARY LC_NUMERIC LC_TIME C11, POSIX.1-2008. LC_MESSAGES POSIX.1-2008. Autres : GNU. HISTORIQUE POSIX.1-2001, C89. Categories LC_ALL LC_COLLATE LC_CTYPE LC_MONETARY LC_NUMERIC LC_TIME C89, POSIX.1-2001. LC_MESSAGES POSIX.1-2001. Autres : GNU. VOIR AUSSI locale(1), localedef(1), isalpha(3), localeconv(3), nl_langinfo(3), rpmatch(3), strcoll(3), strftime(3), charsets(7), locale(7) TRADUCTION La traduction francaise de cette page de manuel a ete creee par Christophe Blaess , Stephan Rafin , Thierry Vignaud , Francois Micaux, Alain Portal , Jean-Philippe Guerard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas Francois , Florentin Duneau , Simon Paillard , Denis Barbier , David Prevot et Lucien Gentis Cette traduction est une documentation libre ; veuillez vous reporter a la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITE LEGALE. Si vous decouvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message a . Pages du manuel de Linux 6.06 28 janvier 2024 setlocale(3)