_strupr_s, _strupr_s_l, _mbsupr_s, _mbsupr_s_l, _wcsupr_s, _wcsupr_s_l

Pone una cadena en mayúsculas usando la configuración regional actual o la configuración regional especificada que se pasa. Estas versiones de _strupr, _strupr_l, _mbsupr, _mbsupr_l, _wcsupr_l, tienen _wcsupr mejoras de seguridad, como se describe en Características de seguridad de CRT.

Importante

_mbsupr_s y _mbsupr_s_l no se pueden usar en aplicaciones que se ejecutan en Windows en tiempo de ejecución. Para obtener más información, vea Funciones de CRT no admitidas en aplicaciones de la Plataforma universal de Windows.

Sintaxis

errno_t _strupr_s(
   char *str,
   size_t numberOfElements
);
errno_t _wcsupr_s(
   wchar_t * str,
   size_t numberOfElements
);
errno_t _strupr_s_l(
   char * str,
   size_t numberOfElements,
   _locale_t locale
);
errno_t _wcsupr_s_l(
   wchar_t * str,
   size_t numberOfElements,
   _locale_t locale
);
errno_t _mbsupr_s(
   unsigned char *str,
   size_t numberOfElements
);
errno_t _mbsupr_s_l(
   unsigned char *str,
   size_t numberOfElements,
   _locale_t locale
);
template <size_t size>
errno_t _strupr_s(
   char (&str)[size]
); // C++ only
template <size_t size>
errno_t _wcsupr_s(
   wchar_t (&str)[size]
); // C++ only
template <size_t size>
errno_t _strupr_s_l(
   char (&str)[size],
   _locale_t locale
); // C++ only
template <size_t size>
errno_t _wcsupr_s_l(
   wchar_t (&str)[size],
   _locale_t locale
); // C++ only
template <size_t size>
errno_t _mbsupr_s(
   unsigned char (&str)[size]
); // C++ only
template <size_t size>
errno_t _mbsupr_s_l(
   unsigned char (&str)[size],
   _locale_t locale
); // C++ only

Parámetros

str
Cadena que se va a poner en mayúsculas.

numberOfElements
Tamaño del búfer.

locale
Configuración regional que se va a usar.

Valor devuelto

Devuelve cero si se ejecuta correctamente; devuelve un código de error de valor distinto de cero si se produce un error.

Estas funciones validan sus parámetros. Si str es un NULL puntero, se invoca el controlador de parámetros no válidos, como se describe en Validación de parámetros . Si la ejecución puede continuar, las funciones devuelven EINVAL y establecen errno en EINVAL. Si numberOfElements es menor que la longitud de la cadena, las funciones devuelven ERANGE y establecen errno en ERANGE.

Comentarios

La función _strupr_s convierte, en su sitio, cada minúscula de str en mayúscula. _wcsupr_s es la versión con caracteres anchos de _strupr_s. _mbsupr_s es la versión de caracteres multibyte de _strupr_s.

El valor de la categoría LC_CTYPE de la configuración regional determina la conversión. Otros caracteres no se ven afectados. Para más información sobre LC_CTYPE, consulte setlocale. Las versiones de estas funciones sin el sufijo _l usan la configuración regional actual; las versiones con el sufijo _l son idénticas salvo que usan el parámetro de configuración regional que se pasa. Para obtener más información, vea Locale.

En C++, el uso de estas funciones se simplifica con las sobrecargas de plantilla; las sobrecargas pueden realizar una inferencia automáticamente de la longitud de búfer (lo que elimina el requisito de especificar un argumento de tamaño) y pueden reemplazar automáticamente funciones anteriores no seguras con sus homólogos seguros más recientes. Para obtener más información, consulte Sobrecargas de plantillas seguras.

Las versiones de la biblioteca de depuración de estas funciones rellenan primero el búfer con 0xFE. Para deshabilitar este comportamiento, use _CrtSetDebugFillThreshold.

De manera predeterminada, el estado global de esta función está limitado a la aplicación. Para cambiar este comportamiento, consulte Estado global en CRT.

Asignaciones de rutinas de texto genérico

Rutina TCHAR.H _UNICODE y _MBCS no definidos _MBCS definido _UNICODE definido
_tcsupr_s _strupr_s _mbsupr_s _wcsupr_s
_tcsupr_s_l _strupr_s_l _mbsupr_s_l _wcsupr_s_l

Requisitos

Routine Encabezado necesario
_strupr_s, _strupr_s_l <string.h>
_wcsupr_s, _wcsupr_s_l, _mbsupr_s, _mbsupr_s_l <string.h> o <wchar.h>

Para obtener más información sobre compatibilidad, consulte Compatibilidad.

Ejemplo

Vea el ejemplo de _strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, . _wcslwr_s_l

Consulte también

Configuración regional
Interpretación de secuencias de caracteres multibyte
Manipulación de cadenas
_strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, _wcslwr_s_l