Condividi tramite


_strupr_s, _strupr_s_l, _mbsupr_s, _mbsupr_s_l, _wcsupr_s_wcsupr_s_l

Converte una stringa in maiuscolo, usando le impostazioni locali correnti o le impostazioni locali specificate passate. Queste versioni di _strupr, _strupr_l_mbsupr_l_mbsupr, _wcsupr_l, _wcsupr includono miglioramenti della sicurezza, come descritto in Funzionalità di sicurezza in CRT.

Importante

_mbsupr_s e _mbsupr_s_l non possono essere usati nelle applicazioni eseguite in Windows Runtime. Per altre informazioni, vedere Funzioni CRT non supportate nelle app della piattaforma UWP (Universal Windows Platform).

Sintassi

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

Parametri

str
Stringa da convertire in lettere maiuscole.

numberOfElements
Dimensioni del buffer .

locale
Impostazioni locali da usare.

Valore restituito

Zero in caso di esito positivo. Un codice di errore diverso da zero in caso di esito negativo.

Queste funzioni convalidano i relativi parametri. Se str è un NULL puntatore, viene richiamato il gestore di parametri non validi, come descritto in Convalida dei parametri . Se l'esecuzione può continuare, le funzioni restituiscono EINVAL e impostano errno su EINVAL. Se numberOfElements è minore della lunghezza della stringa, le funzioni restituiscono ERANGE e impostano errno su ERANGE.

Osservazioni:

La funzione _strupr_s converte sul posto ogni lettera minuscola in str in maiuscolo. _wcsupr_s è la versione a caratteri wide di _strupr_s. _mbsupr_s è la versione a caratteri multibyte di _strupr_s.

La conversione dipende dall'impostazione della categoria LC_CTYPE delle impostazioni locali. Gli altri caratteri non sono interessati. Per altre informazioni su LC_CTYPE, vedere setlocale. Le versioni di queste funzioni senza il suffisso _l usano le impostazioni locali correnti. Le versioni con il suffisso _l sono identiche ma usano le impostazioni locali passate. Per altre informazioni, vedere Locale.

In C++ l'utilizzo di queste funzioni è semplificato dagli overload dei modelli. Gli overload possono dedurre la lunghezza del buffer automaticamente (eliminando la necessità di specificare un argomento di dimensione) e possono sostituire automaticamente le funzioni precedenti e non sicure con le controparti più recenti e sicure. Per altre informazioni, vedere Proteggere gli overload dei modelli.

Le versioni della libreria di debug di queste funzioni riempiono prima di tutto il buffer con 0xFE. Per disabilitare questo comportamento, usare _CrtSetDebugFillThreshold.

Per impostazione predefinita, lo stato globale di questa funzione è limitato all'applicazione. Per modificare questo comportamento, vedere Stato globale in CRT.

Mapping di routine di testo generico

Routine TCHAR.H _UNICODE e _MBCS non definito _MBCS definito _UNICODE definito
_tcsupr_s _strupr_s _mbsupr_s _wcsupr_s
_tcsupr_s_l _strupr_s_l _mbsupr_s_l _wcsupr_s_l

Requisiti

Ciclo Intestazione obbligatoria
_strupr_s, _strupr_s_l <string.h>
_wcsupr_s, _wcsupr_s_l, _mbsupr_s_mbsupr_s_l <string.h> o <wchar.h>

Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).

Esempio

Vedere l'esempio per _strlwr_s, _strlwr_s_l, _mbslwr_s_l_mbslwr_s, , _wcslwr_s, _wcslwr_s_l .

Vedi anche

impostazioni locali
Interpretazione di sequenze di caratteri multibyte
Manipolazione delle stringhe
_strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s_wcslwr_s_l