Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Konwertuje ciąg na wielkie litery przy użyciu bieżących ustawień regionalnych lub określonych ustawień regionalnych, które są przekazywane. Te wersje programu _strupr
, _strupr_l
, _mbsupr_l
_mbsupr
, _wcsupr_l
_wcsupr
mają ulepszenia zabezpieczeń zgodnie z opisem w temacie Funkcje zabezpieczeń w narzędziu CRT.
Ważne
_mbsupr_s
nie można jej _mbsupr_s_l
używać w aplikacjach wykonywanych w środowisko wykonawcze systemu Windows. Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane w aplikacjach platforma uniwersalna systemu Windows.
Składnia
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, który ma być wielką literą.
numberOfElements
Rozmiar buforu.
locale
Ustawienia regionalne do użycia.
Wartość zwracana
Zero w przypadku powodzenia; kod błędu bez zera w przypadku błędu.
Te funkcje weryfikują swoje parametry. Jeśli str
jest wskaźnikiem NULL
, wywoływana jest nieprawidłowa procedura obsługi parametrów, zgodnie z opisem w temacie Weryfikacja parametru . Jeśli wykonywanie jest dozwolone do kontynuowania, funkcje zwracają EINVAL
i ustawiają wartość EINVAL
errno
. Jeśli numberOfElements
jest mniejsza niż długość ciągu, funkcje zwracają ERANGE
i ustawiają wartość errno
ERANGE
.
Uwagi
Funkcja _strupr_s
konwertuje każdą małą literę na str
wielkie litery. _wcsupr_s
jest wersją o szerokim znaku ._strupr_s
_mbsupr_s
jest wersją znaków wielobajtowych ._strupr_s
Konwersja jest określana przez LC_CTYPE
ustawienie kategorii ustawień regionalnych. Nie ma to wpływu na inne znaki. Aby uzyskać więcej informacji na temat LC_CTYPE
programu , zobacz setlocale
. Wersje tych funkcji bez sufiksu _l
używają bieżących ustawień regionalnych; wizje z sufiksem _l
są identyczne, z tą różnicą, że używają ustawień regionalnych przekazanych w zamian. Aby uzyskać więcej informacji, zobacz Ustawienia regionalne.
W języku C++używanie tych funkcji jest uproszczone przez przeciążenia szablonu; przeciążenia mogą automatycznie wnioskować długość buforu (eliminując konieczność określenia argumentu rozmiaru) i mogą automatycznie zastępować starsze, niezabezpieczone funkcje nowszymi, bezpiecznymi odpowiednikami. Aby uzyskać więcej informacji, zobacz Bezpieczne przeciążenia szablonów.
Wersje biblioteki debugowania tych funkcji najpierw wypełniają bufor 0xFE. Aby wyłączyć to zachowanie, użyj polecenia _CrtSetDebugFillThreshold
.
Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.
Mapowania procedur tekstu ogólnego
Procedura TCHAR.H | _UNICODE i _MBCS niezdefiniowane |
_MBCS zdefiniowany |
_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 |
<string.h> |
_wcsupr_s , , _wcsupr_s_l , , _mbsupr_s _mbsupr_s_l |
<string.h> lub <wchar.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Przykład
Zobacz przykład dla : , _strlwr_s_l
, _mbslwr_s
, _mbslwr_s_l
, _wcslwr_s
, _wcslwr_s_l
._strlwr_s
Zobacz też
ustawienia regionalne
Interpretacja sekwencji znaków wielobajtowych
Manipulowanie ciągami
_strlwr_s
, , _strlwr_s_l
, _mbslwr_s
, _mbslwr_s_l
, , _wcslwr_s
_wcslwr_s_l