区域设置

区域设置 "是指您可以使用自定义程序的国家/地区和语言设置。 一些与区域设置相关的类别包括日期和货币值的显示格式。 有关更多信息,请参见区域设置类别

当使用函数,而无需 _l 后缀时,请使用 setlocale 功能更改或查询部分或全部当前程序或线程区域设置信息。 与 _l 后缀的功能将使用仅在该特定功能的执行过程中传递的。这些区域设置信息区域设置参数。 用与 _l 后缀的函数创建一个区域设置用于,请使用 _create_locale。 若要释放该区域设置,请使用 _free_locale。 获取当前区域设置,使用 _get_current_locale

使用 _configthreadlocale 控件每个线程是否有其自己的区域设置,或者在程序中的所有线程共享同一区域设置。 有关更多信息,请参见 区域设置和代码页

函数的更安全版本下表中可用,指示由 _s (“安全”) 后缀。 有关更多信息,请参见CRT中的安全功能

与区域设置相关的实例

实例

用途

设置依赖项的setlocale 类别

atof, _atof_l, _wtof, _wtof_l

为浮点值的转换字符

LC_NUMERIC

atoi, _atoi_l, _wtoi, _wtoi_l

为整数值的转换字符

LC_NUMERIC

_atoi64, _atoi64_l, _wtoi64, _wtoi64_l

对于 64 位整数值的转换字符

LC_NUMERIC

atol, _atol_l, _wtol, _wtol_l

对于长的值将字符

LC_NUMERIC

_atodbl, _atodbl_l, _atoldbl, _atoldbl_l, _atoflt _atoflt_l

对于双长的值的转换字符

LC_NUMERIC

是实例

测试特定条件的特定整数。

LC_CTYPE

isleadbyte, _isleadbyte_l

测试前导字节

LC_CTYPE

localeconv

读取格式的数字的数目适当的值

LC_MONETARY, LC_NUMERIC

MB_CUR_MAX

最大字节长度任何多字节字符在当前区域设置 (在 STDLIB.H) 定义的宏

LC_CTYPE

_mbccpy, _mbccpy_l,_mbccpy_s, _mbccpy_s_l

复制一个多字节字符

LC_CTYPE

_mbclen, mblen, _mblen_l

验证并返回字节数在多字节字符的

LC_CTYPE

strlen, strlen_l, wcslen, wcslen_l, _mbslen, _mbslen_l, _mbstrlen, _mbstrlen_l

为多字节字符字符串:验证在字符串中的每个字符;返回字符串的长度

LC_CTYPE

mbstowcs, _mbstowcs_l,mbstowcs_s, _mbstowcs_s_l

转换多字节字符序列转换为宽字符对应的顺序

LC_CTYPE

mbtowc, _mbtowc_l

转换多字节字符转换为相应的宽字符

LC_CTYPE

printf 功能

编写格式化输出

LC_NUMERIC (确定基数字符输出)

scanf 功能

读取的格式化输入

LC_NUMERIC (确定基数字体标识)

setlocale, _wsetlocale

为程序选择区域设置

不适用

strcoll, wcscoll, _mbscoll, _strcoll_l, _wcscoll_l, _mbscoll_l

比较两个字符串字符

LC_COLLATE

_stricmp, _wcsicmp, _mbsicmp, _stricmp_l, _wcsicmp_l, _mbsicmp_l

比较两个字符串不考虑用例

LC_CTYPE

_stricoll, _wcsicoll, _mbsicoll, _stricoll_l, _wcsicoll_l, _mbsicoll_l

比较两个字符串 (不区分大小写) 字符

LC_COLLATE

_strncoll, _wcsncoll, _mbsncoll, _strncoll_l, _wcsncoll_l, _mbsncoll_l

比较两个字符串第一 n 字符

LC_COLLATE

_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l

比较两个字符串字符不考虑大小写。

LC_CTYPE

_strnicoll, _wcsnicoll, _mbsnicoll, _strnicoll_l, _wcsnicoll_l, _mbsnicoll_l

比较两个字符串 (不区分大小写) 第一 n 字符

LC_COLLATE

strftime, wcsftime, _strftime_l, _wcsftime_l

根据所提供的 format 参数设置日期和时间值

LC_TIME

_strlwr, _wcslwr, _mbslwr, _strlwr_l, _wcslwr_l, _mbslwr_l,_strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, _wcslwr_s_l

转换,例如,在特定字符串的每个大写字母转换为小写

LC_CTYPE

strtod, _strtod_l, wcstod, _wcstod_l

将字符串转换为 double 值

LC_NUMERIC (确定基数字体标识)

strtol, wcstol, _strtol_l, _wcstol_l

将字符串转换为 long值

LC_NUMERIC (确定基数字体标识)

strtoul, _strtoul_l, wcstoul, _wcstoul_l

将字符串转换为无符号 long 值

LC_NUMERIC (确定基数字体标识)

_strupr, _strupr_l, _mbsupr, _mbsupr_l, _wcsupr_l, _wcsupr,_strupr_s, _strupr_s_l, _mbsupr_s, _mbsupr_s_l, _wcsupr_s, _wcsupr_s_l

转换,例如,在字符串的每个小写字母转换为大写

LC_CTYPE

strxfrm, wcsxfrm, _strxfrm_l, _wcsxfrm_l

转换字符串转换为排列的基于窗体区域设置

LC_COLLATE

tolower, _tolower, towlower, _tolower_l, _towlower_l,_mbctolower, _mbctolower_l, _mbctoupper, _mbctoupper_l

转换特定字符转换为相应的小写字母

LC_CTYPE

toupper, _toupper, towupper, _toupper_l, _towupper_l,_mbctolower, _mbctolower_l, _mbctoupper, _mbctoupper_l

转换特定字符转换为相应的大写字母

LC_CTYPE

wcstombs, _wcstombs_l,wcstombs_s, _wcstombs_s_l

将宽字符序列分成多字节字符对应的顺序

LC_CTYPE

wctomb, _wctomb_l,wctomb_s, _wctomb_s_l

宽字符转换为相应的多字节字符

LC_CTYPE

备注

为多字节实例,多字节代码页绑定等效于区域设置与 setlocale_setmbcp,与 _MB_CP_LOCALE 的参数进行多字节代码页与相同 setlocale 代码页的。

请参见

参考

国际化

运行时实例按类别