获取C或C++的系统语言

问题描述 投票:1回答:1

我试着搜索了一下,但我没有找到类似的东西,我有一个跨平台的软件(Windows,GNULinux和OSX),我不知道如何获得操作系统当前的语言,比如pt_BR,en_US之类的东西。

我有一个跨平台的软件(Windows,GNULinux和OSX),我不知道如何获得操作系统的当前语言,如pt_BR,en_US,以及这些东西。

它必须在所有系统上工作,因为所有系统的源代码都是一样的。

c++ cross-platform locale
1个回答
5
投票

我很惊讶你没有遇到这个,因为它是 标准C++::

ios::getloc 是你应该看看的东西,但更重要的是: std::locale() (代码片段来自 locale.name docs on cppreference.com):

std::cout << "The default locale is " << std::locale().name() << '\n'
          << "The user's locale is " << std::locale("").name() << '\n'
          << "A nameless locale is " << loc.name() << '\n';
© www.soinside.com 2019 - 2024. All rights reserved.