Udostępnij za pośrednictwem


_strupr_s, _strupr_s_l, _mbsupr_s, _mbsupr_s_l, _wcsupr_s, _wcsupr_s_l

Konwertuje ciąg na wielkie litery, przy użyciu bieżących ustawień regionalnych lub przekazanych, określonych ustawień regionalnych.Te wersje _strupr, _strupr_l, _mbsupr, _mbsupr_l, _wcsupr_l, _wcsupr mają wzmocnienia zabezpieczeń, jak opisano w Funkcje zabezpieczeń w CRT.

Ważna uwagaWażne

_mbsupr_s i _mbsupr_s_l nie można używać w aplikacjach korzystających ze środowiska wykonawczego systemu Windows.Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane przez /ZW.

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

Parametry

  • str
    Ciąg do napisania wielką literą.

  • numberOfElements
    Rozmiar buforu.

  • locale
    Ustawienia regionalne do użycia.

Wartość zwracana

Zero, jeśli operacja się powiedzie; kod błędu różny od zera w razie porażki.

Te funkcje sprawdzają poprawność swoich parametrów.Jeśli str ma wartość NULL, zostanie wywołana procedura obsługi nieprawidłowego parametru, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może być kontynuowane, funkcje zwracają EINVAL i ustawiają errno jako EINVAL.Jeśli numberOfElements jest mniejsza niż długość ciągu, funkcja zwraca ERANGE i ustawia errno jako ERANGE.

Uwagi

Funkcja _strupr_s konwertuje, w miejscu, każdą małą literę w str na wielkie litery._wcsupr_s to wersja znaków dwubajtowych _strupr_s._mbsupr_s jest wersją znaków wielobajtowych _strupr_s.

Konwersja jest określona przez LC_CTYPE ustawienia kategorii lokalnej.Inne znaki nie są zagrożone.Aby uzyskać więcej informacji na temat LC_CTYPE, zobacz setlocale.Wersje tych funkcji, które nie mają przyrostka _l używają bieżących ustawień regionalnych; wersje, które mają przyrostek _l są identyczne, z tą różnicą, że w zamian korzystają z przekazanego parametru ustawień regionalnych.Aby uzyskać więcej informacji, zobacz Regionalne.

W języku programowania C++ korzystanie z tych funkcji jest uproszczone przez przeciążania szablonu; przeciążania mogą automatycznie wywnioskować długość buforu (tak, aby nie było konieczne określenie argumentu rozmiaru), ponadto te funkcje mogą automatycznie zastąpić starsze, niezabezpieczone funkcje nowszymi, bardziej bezpiecznymi odpowiednikami.Aby uzyskać więcej informacji, zobacz Przeciążenia bezpiecznych szablonów.

Wersje debugowania tych funkcji najpierw wypełniają bufor 0xFD.Aby wyłączyć to zachowanie, użyj _CrtSetDebugFillThreshold.

Rutynowe mapowania zwykłego tekstu

Procedura Tchar.h

_UNICODE & _MBCS nie zdefiniowano

_MBCS zdefiniowano

_UNICODE zdefiniowany

_tcsupr_s

_strupr_s

_mbsupr_s

_wcsupr_s

_tcsupr_s_l

_strupr_s_l

_mbsupr_s_l

_wcsupr_s_l

Wymagania

Procedura

Wymagany nagłówek

_strupr_s, _strupr_s_l

<Ciąg>

_wcsupr_s, _wcsupr_s_l, _mbsupr_s, _mbsupr_s_l

<ciągo.h> lub <wchar.h>

Dodatkowe informacje o zgodności – zobacz: Zgodność.

Przykład

Zobacz przykład _strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, _wcslwr_s_l .

Odpowiednik w programie .NET Framework

System ciągów do wyższego

Zobacz też

Informacje

Regionalne

Interpretacja wielobajtowych sekwencji znaków

Manipulowanie ciągami (CRT)

_strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, _wcslwr_s_l