当前位置:  开发笔记 > 编程语言 > 正文

C中的getlocale()函数

如何解决《C中的getlocale()函数》经验,为你挑选了1个好方法。

我可以使用该setlocale()函数设置语言环境.但有没有办法我可以获取语言环境并将其保存在变量中,以便我以后可以重置它.

这就是我想要做的:

str=getlocale(LC_CTYPE);
setlocale(LC_CTYPE,"en_US");
...
setlocale(LC_CTYPE,str);

我该如何实现该getlocale()功能,还是有其他选择?



1> AlexD..:

您可以传递NULL并使用返回值.看到setlocale

您还可以使用此函数通过将空指针作为locale参数传递来查找当前区域设置.在这种情况下,setlocale返回一个字符串,该字符串是当前为类别类别选择的语言环境的名称.

或者在C标准中:

7.11.1.1 setlocale函数
....

如果给出了指向字符串的指针locale并且可以接受选择,则该 setlocale函数返回指向与category为新语言环境指定的字符串相关联的字符串的指针 .如果无法满足选择,则该setlocale 函数返回空指针,并且不更改程序的区域设置.

空指针locale使setlocale函数返回指向与category程序当前语言环境关联的字符串的指针; 程序的区域设置不会更改.

setlocale函数返回的字符串指针使得后续调用该字符串值及其相关类别将恢复该程序的语言环境的该部分.

推荐阅读
女女的家_747
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有