C ++ setlocale () - C ++ standaardbibliotheek

De functie setlocale () in C ++ stelt de locale-informatie voor het huidige programma in.

De functie setlocale () is gedefinieerd in het header-bestand.

setlocale () prototype

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

De functie setlocale wordt gebruikt om een ​​gespecificeerde systeemlandinstelling voor de gegeven categorie in te stellen. De functie setlocale kan ook worden gebruikt om de huidige C-locale op te vragen.

Dit kan gedaan worden door een null-pointer door te geven in plaats van locale.

setlocale () Parameters

  • categorie: geeft aan welke locale informatie van het programma wordt beïnvloed. De mogelijke macro's voor categorie zijn:
Categoriemacro voor setlocale ()
Macro's Omschrijving
LC_ALL Selecteert alle C-landinstellingen
LC_COLLATE Selecteer de sorteercategorie
LC_CTYPE Selecteert de karakterclassificatiecategorie
LC_MONETARY Selecteert de categorie geldopmaak
LC_NUMERIC Selecteert de numerieke opmaakcategorie
LC_TIME Selecteert de categorie voor tijdnotatie
  • locale: een systeemspecifieke locale-id. Als het een null-pointer is, vraagt ​​een aanroep naar setlocale () de huidige C-locale op.

setlocale () Retourwaarde

  • Bij succes retourneert de functie setlocale () een pointer naar de tekenreeks die de landinstelling C identificeert na het toepassen van de wijzigingen.
  • Bij een mislukking retourneert het een nul-aanwijzer.

Voorbeeld: hoe werkt de functie 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; )

Wanneer u het programma uitvoert, is de uitvoer:

 Huidige locale: en_US.utf8 Veranderende locale Huidige locale: en_GB.utf8

Interessante artikelen...