我正在使用以下方法来获取系统区域设置:
currentLocale = setlocale(LC_ALL,"");
正常情况下,这很好用,例如,我得到
en_GB.UTF-8
。但是,当以root身份运行同一程序时,我得到
C
。以root身份运行时如何获取系统语言环境? 最佳答案
没有“系统区域设置”。每个用户都可以自行设置语言环境,并且每个程序可能会有所不同(例如,执行LC_ALL =“en_US”语言环境)。返回值C
表示用户尚未设置任何语言环境,并且默认语言环境处于 Activity 状态。
关于c++ - 以root身份运行时,setlocale()返回 'C',我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7900948/