La fonction setlocale () en C ++ définit les informations locales pour le programme en cours.
La fonction setlocale () est définie dans le fichier d'en-tête.
prototype setlocale ()
int setlocale (int category, const char * locale);
La fonction setlocale est utilisée pour définir un paramètre régional système spécifié pour la catégorie donnée. La fonction setlocale peut également être utilisée pour interroger la locale C actuelle.
Cela peut être fait en passant un pointeur nul à la place de la locale.
Paramètres de setlocale ()
- category: spécifie les informations locales du programme qui sont affectées. Les macros possibles pour la catégorie sont:
Macros | La description |
---|---|
LC_ALL | Sélectionne tous les paramètres régionaux C |
LC_COLLATE | Sélection de la catégorie de classement |
LC_CTYPE | Sélectionne la catégorie de classification des caractères |
LC_MONETARY | Sélectionne la catégorie de formatage monétaire |
LC_NUMERIC | Sélectionne la catégorie de formatage numérique |
LC_TIME | Sélectionne la catégorie de formatage de l'heure |
- locale: identificateur de paramètres régionaux spécifique au système. S'il s'agit d'un pointeur nul, un appel à setlocale () interroge les paramètres régionaux C actuels.
setlocale () Valeur de retour
- En cas de succès, la fonction setlocale () renvoie un pointeur vers la chaîne identifiant les paramètres régionaux C après avoir appliqué les modifications.
- En cas d'échec, il renvoie un pointeur nul.
Exemple: comment fonctionne la fonction setlocale ()?
#include #include using namespace std; int main() ( char *str; setlocale(LC_ALL, "en_US.utf8"); str = setlocale(LC_ALL, NULL); cout << "Current locale: " << str << endl; cout << "Changing locale " << endl; setlocale(LC_ALL, "en_GB.utf8"); str = setlocale(LC_ALL, NULL); wcout << "Current locale: " << str << endl; return 0; )
Lorsque vous exécutez le programme, la sortie sera:
Paramètres régionaux actuels: en_US.utf8 Changement de paramètres régionaux Paramètres régionaux actuels: en_GB.utf8