C ++ setlocale () - C ++ - vakiokirjasto

C ++: n setlocale () -toiminto asettaa nykyisen ohjelman kielitiedot.

Funktio setlocale () määritetään otsikkotiedostossa.

setlocale () -prototyyppi

 int setlocale (int-luokka, const char * locale);

Setlocale-funktiota käytetään määrittämään tietyn järjestelmän alue tietylle luokalle. Setlocale-funktiota voidaan käyttää myös nykyisen C-alueen kyselyyn.

Tämä voidaan tehdä välittämällä nollaosoitin kielen sijasta.

setlocale () -parametrit

  • category: Määrittää, mitä ohjelman kielitietoja se koskee. Luokan mahdolliset makrot ovat:
Luokan makro setlocale ()
Makrot Kuvaus
LC_ALL Valitsee kaikki C-kieliasetukset
LC_COLLATE Valitse lajitteluluokka
LC_CTYPE Valitsee merkkiluokituksen luokan
LC_MONETARY Valitsee rahamuotoiluluokan
LC_NUMERIC Valitsee numeerisen muotoiluluokan
LC_TIME Valitsee ajan muotoiluluokan
  • locale: Järjestelmäkohtainen locale-tunniste. Jos se on tyhjä osoitin, kutsu setlocale () kysyy nykyisen C-kielen.

setlocale () Palautusarvo

  • Menestyksen jälkeen setlocale () -funktio palauttaa osoittimen merkkijonoon, joka identifioi C-kielen muutosten jälkeen.
  • Epäonnistumisen yhteydessä se palauttaa tyhjän osoittimen.

Esimerkki: Kuinka setlocale () -toiminto toimii?

 #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; )

Kun suoritat ohjelmaa, tulos on:

 Nykyinen kieliversio: en_US.utf8 Maantieteellisen sijainnin muuttaminen Nykyinen kieliasetus: en_GB.utf8

Mielenkiintoisia artikkeleita...