Funkcija setlocale () C ++ nosaka pašreizējās programmas lokalizācijas informāciju.
Funkcija setlocale () ir definēta galvenes failā.
setlocale () prototips
int setlocale (int kategorija, const char * locale);
Funkcija setlocale tiek izmantota, lai norādītajai kategorijai iestatītu noteiktu sistēmas lokalizāciju. Funkciju setlocale var izmantot arī vaicājumiem par pašreizējo C lokalizāciju.
To var izdarīt, lokalizācijas vietā nododot nulles rādītāju.
setlocale () parametri
- kategorija: norāda, kura programmas lokalizācijas informācija tiek ietekmēta. Iespējamie kategorijas makro ir:
Makro | Apraksts |
---|---|
LC_ALL | Atlasa visu C lokalizāciju |
LC_COLLATE | Atlasiet salīdzināšanas kategoriju |
LC_CTYPE | Atlasa rakstzīmju klasifikācijas kategoriju |
LC_MONETARY | Atlasa naudas formāta kategoriju |
LC_NUMERIC | Atlasa ciparu formatēšanas kategoriju |
LC_TIME | Atlasa laika formatēšanas kategoriju |
- locale: sistēmai raksturīgs lokalizācijas identifikators. Ja tas ir nulles rādītājs, zvans uz setlocale () pieprasa pašreizējo C lokalizāciju.
setlocale () Atgriežamā vērtība
- Pēc panākumiem funkcija setlocale () pēc izmaiņu piemērošanas atgriež rādītāju virknei, kas identificē C lokalizāciju.
- Neveiksmes gadījumā tas atgriež nulles rādītāju.
Piemērs: Kā darbojas funkcija 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; )
Palaidot programmu, izeja būs:
Pašreizējā lokalizācija: en_US.utf8 Lokalizācijas maiņa Pašreizējā lokalizācija: en_GB.utf8