setlocale返回值

时间:2010-06-23 09:57:31

标签: linux

调用函数

setlocale(LC_MESSAGES , NULL)

返回“”(空字符串)不是Null或任何语言环境。

为什么我会得到这个返回值?

是因为平台没有实现此功能吗?

1 个答案:

答案 0 :(得分:0)

在输入setlocale时,空字符串""表示环境的默认语言环境,可能与"C"表示的最小C语言环境不同。可能是setlocale已使用空字符串调用,这是平台指示的方式。但是,人们希望或者甚至期望返回的字符串会提供更多信息,例如"en_US.UTF8"

环境中的信息可能不正确或不受支持,这是系统可以做的最好的。应该检查声称调用setlocale并将空字符串作为输入的返回值,因为此时的失败将返回空指针。