setlocale()的默认设置是什么意思?setlocale()默认是"C“("POSIX")。但是这到底是什么意思?它的默认字符集和语言是什么?是"en_US.utf8”吗?
发布于 2012-06-11 09:34:25
区域设置"C“的字符集需要包含所有7位ASCII字符,并且排序序列仅基于ASCII字符代码。不需要ASCII之外的其他字符。如果正在处理的文本包含该限制集之外的任何字符,则行为是未定义的。就语言而言,http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap07.html中的所有标准定义都对应于美国英语。
发布于 2012-06-11 05:43:19
来自N1570:
7.11.1.1设置语言环境函数
3区域设置的值"C“指定C语言翻译的最小环境;区域设置的值"”指定特定于区域设置的本机环境。其他实现定义的字符串可以作为第二个参数传递给setlocale。
另见脚注222:
ISO 222)
/IEC9945−2指定了可用于指定C语言区域设置的区域设置和字符映射格式。
这给了您一个概念(因为脚注严格地不是标准的规范部分的一部分),在这种情况下"C“意味着什么。
https://stackoverflow.com/questions/10972547
复制相似问题