Configuración regional

Locale hace referencia a los valores de país o región y de idioma que se pueden usar para personalizar un programa. Entre las categorías dependientes de la configuración regional se encuentran los formatos de presentación de fechas y de valores de moneda. Para obtener más información, consulte Categorías de configuración regional.

Use la función setlocale para cambiar o consultar parte de la información, o toda ella, de configuración regional del programa o subproceso actual, mientras usa funciones sin el sufijo _l. Las funciones con el sufijo _l usan el parámetro de configuración regional que se pasa para la información de configuración regional solo durante la ejecución de esa función concreta. Para crear una configuración regional y usarla con una función que tenga el sufijo _l, use _create_locale. Para liberar esta configuración regional, use _free_locale. Para obtener la configuración regional actual, use _get_current_locale.

Use _configthreadlocale para determinar si cada subproceso tiene su propia configuración regional o todos los subprocesos de un programa comparten la misma configuración regional. Para obtener más información, vea Configuraciones regionales y páginas de códigos.

Existen versiones más seguras de las funciones de la tabla siguiente, que se indican mediante el sufijo _s (“segura”). Para obtener más información, consulte Características de seguridad en CRT.

Rutinas dependientes de la configuración regional

Routine Usar dependencia de configuración de categorías setlocale
atof, _atof_l, , _wtof, _wtof_l Convierte el carácter en valor de punto flotante LC_NUMERIC
atoi, _atoi_l, , _wtoi, _wtoi_l Convierte el carácter en valor entero LC_NUMERIC
_atoi64, _atoi64_l, , _wtoi64, _wtoi64_l Convierte el carácter en valor entero de 64 bits LC_NUMERIC
atol, _atol_l, , _wtol, _wtol_l Convierte el carácter en valor long LC_NUMERIC
_atodbl, _atodbl_l, _atoldbl, _atoldbl_l, , _atoflt, _atoflt_l Convierte el carácter en valor double-long LC_NUMERIC
is, isw rutinas Comprueba un entero dado para determinar si cumple una condición concreta LC_CTYPE
isleadbyte, _isleadbyte_l Comprueba si se trata de un byte inicial LC_CTYPE
localeconv Lee los valores adecuados para dar formato a cantidades numéricas LC_MONETARY, LC_NUMERIC
MB_CUR_MAX Longitud máxima en bytes de cualquier carácter multibyte en la configuración regional actual (macro definida en STDLIB.H) LC_CTYPE
_mbccpy, _mbccpy_l, ,_mbccpy_s ,_mbccpy_s_l Copia un carácter multibyte LC_CTYPE
_mbclen, , mblen, _mblen_l Valida y devuelve el número de bytes del carácter multibyte LC_CTYPE
strlen, wcslen, _mbslen, _mbslen_l, , _mbstrlen, _mbstrlen_l En el caso de cadenas de caracteres multibyte: valida cada carácter de la cadena; devuelve la longitud de la cadena LC_CTYPE
mbstowcs, _mbstowcs_l, ,mbstowcs_s ,_mbstowcs_s_l Convierte la secuencia de caracteres multibyte en la secuencia correspondiente de caracteres anchos LC_CTYPE
mbtowc, _mbtowc_l Convierte el carácter multibyte en el carácter ancho correspondiente LC_CTYPE
funcionesprintf Escribe resultados con formato LC_NUMERIC (determina la salida de caracteres de base)
funcionesscanf Lee la entrada con formato LC_NUMERIC (determina el reconocimiento de caracteres de base)
setlocale, _wsetlocale Selecciona la configuración regional del programa No aplicable
strcoll, wcscoll, _mbscoll, _strcoll_l, , _wcscoll_l, _mbscoll_l Compara los caracteres de dos cadenas LC_COLLATE
_stricmp, _wcsicmp, _mbsicmp, _stricmp_l, , _wcsicmp_l, _mbsicmp_l Compara dos cadenas sin distinción entre mayúsculas y minúsculas LC_CTYPE
_stricoll, _wcsicoll, _mbsicoll, _stricoll_l, , _wcsicoll_l, _mbsicoll_l Compara los caracteres de dos cadenas sin distinción entre mayúsculas y minúsculas LC_COLLATE
_strncoll, _wcsncoll, _mbsncoll, _strncoll_l, , _wcsncoll_l, _mbsncoll_l Compara los primeros n caracteres de dos cadenas LC_COLLATE
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, , _wcsnicmp_l, _mbsnicmp_l Compara los caracteres de dos cadenas sin distinción entre mayúsculas y minúsculas LC_CTYPE
_strnicoll, _wcsnicoll, _mbsnicoll, _strnicoll_l, , _wcsnicoll_l, _mbsnicoll_l Compara los primeros n caracteres de dos cadenas sin distinción entre mayúsculas y minúsculas LC_COLLATE
strftime, wcsftime, , _strftime_l, _wcsftime_l Da formato al valor de fecha y hora de acuerdo con el argumento format proporcionado LC_TIME
_strlwr, _wcslwr, _mbslwr, , _strlwr_l, _mbslwr_l_wcslwr_l,_strlwr_s_mbslwr_s_strlwr_s_l_mbslwr_s_l , , _wcslwr_s_wcslwr_s_l Convierte, en contexto, cada mayúscula de la cadena especificada en minúscula LC_CTYPE
strtod, _strtod_l, , wcstod, _wcstod_l Convierte el valor de cadena en valor double LC_NUMERIC (determina el reconocimiento de caracteres de base)
strtol, wcstol, , _strtol_l, _wcstol_l Convierte el valor de cadena en valor long LC_NUMERIC (determina el reconocimiento de caracteres de base)
strtoul, _strtoul_l, , wcstoul, _wcstoul_l Convierte la cadena de caracteres en valor long sin signo LC_NUMERIC (determina el reconocimiento de caracteres de base)
_strupr, _strupr_l, _mbsupr, , _mbsupr_l, _wcsupr_wcsupr_l,_strupr_s_mbsupr_s_strupr_s_l_mbsupr_s_l , , _wcsupr_s_wcsupr_s_l Convierte, en contexto, cada minúscula de la cadena especificada en mayúscula LC_CTYPE
strxfrm, wcsxfrm, , _strxfrm_l, _wcsxfrm_l Transforma la cadena en formato intercalado según la configuración regional LC_COLLATE
tolower, _tolower, towlower, _tolower_l, _towlower_l,_mbctolower_mbctolower_l , , , , _mbctoupper_mbctoupper_l Convierte el carácter dado en el carácter en minúscula correspondiente LC_CTYPE
toupper, _toupper, towupper, _toupper_l, _towupper_l,_mbctolower_mbctolower_l , , , , _mbctoupper_mbctoupper_l Convierte el carácter dado en la letra mayúscula correspondiente LC_CTYPE
wcstombs, _wcstombs_l, ,wcstombs_s ,_wcstombs_s_l Convierte la secuencia de caracteres anchos en la secuencia correspondiente de caracteres multibyte LC_CTYPE
wctomb, _wctomb_l, ,wctomb_s ,_wctomb_s_l Convierte el carácter ancho en el carácter multibyte correspondiente LC_CTYPE

Nota:

En el caso de las rutinas multibyte, la página de códigos multibyte debe ser equivalente a la configuración regional establecida mediante setlocale. _setmbcp, con el argumento de _MB_CP_LOCALE, hace que la página de códigos multibyte sea igual que la página de códigos de setlocale.

Consulte también

Internacionalización
Rutinas en tiempo de ejecución Universal C por categoría