C ++ setlocale () - Βασική βιβλιοθήκη C ++

Η συνάρτηση setlocale () στο C ++ ορίζει τις τοπικές πληροφορίες για το τρέχον πρόγραμμα.

Η συνάρτηση setlocale () ορίζεται στο αρχείο κεφαλίδας.

πρωτότυπο setlocale ()

 int setlocale (κατηγορία int, const char * locale);

Η συνάρτηση setlocale χρησιμοποιείται για να ορίσει μια καθορισμένη τοποθεσία συστήματος για τη δεδομένη κατηγορία. Η συνάρτηση setlocale μπορεί επίσης να χρησιμοποιηθεί για το ερώτημα της τρέχουσας τοπικής C.

Αυτό μπορεί να γίνει μεταβιβάζοντας έναν μηδενικό δείκτη στη θέση των τοπικών ρυθμίσεων.

setlocale () Παράμετροι

  • κατηγορία: Καθορίζει ποιες τοπικές πληροφορίες του προγράμματος επηρεάζονται. Οι πιθανές μακροεντολές για την κατηγορία είναι:
Μακροεντολή κατηγορίας για setlocale ()
Μακροεντολές Περιγραφή
LC_ALL Επιλέγει όλες τις τοπικές ρυθμίσεις C
LC_COLLATE Επιλέξτε την κατηγορία ταξινόμησης
LC_CTYPE Επιλέγει την κατηγορία ταξινόμησης χαρακτήρων
LC_MONETARY Επιλέγει την κατηγορία νομισματικής μορφοποίησης
LC_NUMERIC Επιλέγει την κατηγορία αριθμητικής μορφοποίησης
LC_TIME Επιλέγει την κατηγορία μορφοποίησης ώρας
  • locale: Ένα αναγνωριστικό τοπικής ρύθμισης συστήματος. Εάν πρόκειται για μηδενικό δείκτη, μια κλήση στο setlocale () ερωτά την τρέχουσα τοπική C.

setlocale () Τιμή επιστροφής

  • Με επιτυχία, η συνάρτηση setlocale () επιστρέφει ένα δείκτη στη συμβολοσειρά που προσδιορίζει τις τοπικές ρυθμίσεις C μετά την εφαρμογή των αλλαγών.
  • Σε αποτυχία επιστρέφει ένα μηδέν δείκτη.

Παράδειγμα: Πώς λειτουργεί η λειτουργία 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; )

Όταν εκτελείτε το πρόγραμμα, η έξοδος θα είναι:

 Τρέχουσες τοπικές ρυθμίσεις: en_US.utf8 Αλλαγή τοπικών Τρέχουσες τοπικές ρυθμίσεις: en_GB.utf8

ενδιαφέροντα άρθρα...