_strupr_s
, , _strupr_s_l
_mbsupr_s_l
_mbsupr_s
_wcsupr_s
,_wcsupr_s_l
Преобразуют буквы в строке в прописные с использованием текущего или переданного языкового стандарта. Эти версии , , _strupr_l
, _wcsupr
_mbsupr
_mbsupr_l
_wcsupr_l
имеют улучшения безопасности, как описано в функциях _strupr
безопасности в CRT.
Внимание
Функции _mbsupr_s
и _mbsupr_s_l
не могут использоваться в приложениях, запускаемых в среде выполнения Windows. Дополнительные сведения: Функции CRT, которые не поддерживаются в приложениях универсальной платформы Windows.
Синтаксис
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
Параметры
str
Строка для преобразования букв.
numberOfElements
Размер буфера.
locale
Используемый языковой стандарт.
Возвращаемое значение
Нуль в случае успеха или ненулевой код ошибки в случае ошибки.
Эти функции проверяют свои параметры. Если str
это NULL
указатель, вызывается обработчик недопустимых параметров, как описано в разделе проверки параметров. Если выполнение может быть продолжено, эти функции возвращают EINVAL
и устанавливают параметр errno
в значение EINVAL
. Если numberOfElements
меньше, чем длина строки, функция возвращает ERANGE
и устанавливает для параметра errno
значение ERANGE
.
Замечания
Функция _strupr_s
преобразует "на месте" каждую строчную букву в строке str
в прописную. _wcsupr_s
— версия _strupr_s
с расширенными символами. Функция _mbsupr_s
— это версия функции _strupr_s
с многобайтовой кодировкой символов.
Преобразование определяется категорией LC_CTYPE
языкового стандарта. Другие символы не затрагиваются. Дополнительные сведения о методе LC_CTYPE
см. в разделе setlocale
. Версии этих функций без суффикса _l
используют текущий языковой стандарт. Версии с суффиксом _l
идентичны им, за исключением того, что они используют переданный параметр языкового стандарта. Дополнительные сведения см. в разделе Locale.
В C++ использование данных функций упрощено наличием шаблонных перегрузок; перегруженные методы могут автоматически определять длину буфера (что исключает необходимость указания аргумента с размером буфера), а также они могут автоматически заменять более старые, незащищенные функции их новыми безопасными аналогами. Дополнительные сведения см. в разделе "Безопасные перегрузки шаблонов".
Версии библиотек отладки этих функций сначала заполняют буфер 0xFE. Чтобы отключить это поведение, используйте _CrtSetDebugFillThreshold
.
По умолчанию глобальное состояние этой функции ограничивается приложением. Чтобы изменить это поведение, см . статью "Глобальное состояние" в CRT.
Сопоставления подпрограмм универсального текста
Подпрограмма TCHAR.H | _UNICODE и _MBCS не определен |
_MBCS Определенные |
_UNICODE Определенные |
---|---|---|---|
_tcsupr_s |
_strupr_s |
_mbsupr_s |
_wcsupr_s |
_tcsupr_s_l |
_strupr_s_l |
_mbsupr_s_l |
_wcsupr_s_l |
Требования
Маршрут | Обязательный заголовок |
---|---|
_strupr_s , _strupr_s_l |
<string.h> |
_wcsupr_s , , _wcsupr_s_l _mbsupr_s _mbsupr_s_l |
<string.h> или <wchar.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
Пример
См. пример для _strlwr_s
, , _mbslwr_s
_strlwr_s_l
, _mbslwr_s_l
, . _wcslwr_s_l
_wcslwr_s
См. также
Локаль
Интерпретация последовательностей многобайтовых символов
Обработка строк
_strlwr_s
, , _strlwr_s_l
_mbslwr_s_l
_mbslwr_s
_wcslwr_s
,_wcslwr_s_l