Как я могу получить системный язык в C / C ++? - PullRequest
4 голосов
/ 13 сентября 2010

Как я могу получить системный язык в C / C ++?Как en_US или en_GB.

Ответы [ 4 ]

9 голосов
/ 13 сентября 2010

В системе POSIX это выглядит как setlocale (LC_CTYPE, NULL);вернет текущую локаль.

6 голосов
/ 13 сентября 2010

Как правило, вы этого не делаете - скорее, вы (обычно) хотите просто соответствовать тому, что он запрашивает, для использования безымянной локали (то есть, std::locale(""); даст вам локаль по выбору пользователя).

5 голосов
/ 13 сентября 2010

Dup of Выясните, что языковые окна были установлены как

В заключение: «Нужная функция Win32 - GetSystemDefaultUILanguage ()» (предполагается, что Windows, конечно)

0 голосов
/ 13 сентября 2010

Не обязательно один системный язык; отдельные «грани» локали можно настроить отдельно. Это все сделано с переменными среды; http://www.manpagez.com/man/1/locale/ имеет частичный список переменных и их значений.

...