C ++ setlocale () - C ++ standardowa biblioteka

Funkcja setlocale () w C ++ ustawia informacje o lokalizacji dla bieżącego programu.

Funkcja setlocale () jest zdefiniowana w pliku nagłówkowym.

setlocale () prototyp

 int setlocale (kategoria int, const char * locale);

Funkcja setlocale służy do ustawiania określonych ustawień narodowych systemu dla danej kategorii. Funkcja setlocale może być również używana do odpytywania bieżących ustawień regionalnych C.

Można to zrobić, przekazując pusty wskaźnik zamiast ustawień regionalnych.

setlocale () Parametry

  • kategoria: określa, na które informacje regionalne programu ma to wpływ. Możliwe makra dla kategorii to:
Makro kategorii dla setlocale ()
Makra Opis
LC_ALL Wybiera wszystkie ustawienia regionalne C.
LC_COLLATE Wybierz kategorię zestawiania
LC_CTYPE Wybiera kategorię klasyfikacji znaków
LC_MONETARY Wybiera kategorię formatowania pieniężnego
LC_NUMERIC Wybiera kategorię formatowania liczb
LC_TIME Wybiera kategorię formatowania czasu
  • locale: identyfikator ustawień regionalnych specyficzny dla systemu. Jeśli jest to wskaźnik zerowy, wywołanie setlocale () pyta o bieżące ustawienia regionalne C.

setlocale () Zwracana wartość

  • Po pomyślnym zakończeniu funkcja setlocale () zwraca wskaźnik do łańcucha identyfikującego ustawienia regionalne C po zastosowaniu zmian.
  • W przypadku niepowodzenia zwraca pusty wskaźnik.

Przykład: Jak działa funkcja 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; )

Po uruchomieniu programu wynik będzie następujący:

 Bieżące ustawienia regionalne: en_US.utf8 Zmiana ustawień regionalnych Bieżące ustawienia regionalne: en_GB.utf8

Interesujące artykuły...