_strupr_s, _strupr_s_l, _mbsupr_s, _mbsupr_s_l, _wcsupr_s, _wcsupr_s_l
Преобразование строки в прописными буквами, используя текущий языковой стандарт или указанный языковой стандарт передаваемыми.Здесь представлены версии _strupr, _strupr_l, _mbsupr, _mbsupr_l, _wcsupr_l, _wcsupr с усовершенствованной безопасностью, как описано в разделе Средства безопасности в CRT.
Важно |
---|
_mbsupr_s и _mbsupr_s_l нельзя использовать в приложениях, выполняемых в среды выполнения Windows.Дополнительные сведения см. в разделе Функции CRT не поддерживаются при /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
Параметры
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 идентичны за исключением того, что они используют языковой стандарт, вместо этого в.Для получения дополнительной информации см. Языковой стандарт.
В C++ использование данных функций упрощено наличием шаблонных перегрузок; перегруженные методы могут автоматически определять длину буфера (что исключает необходимость указания аргумента с размером буфера), а также они могут автоматически заменять более старые, незащищенные функции их новыми безопасными аналогами.Для получения дополнительной информации см. Предоставляйте перегруженный шаблона.
Отладочные версии этих функций сначала заполняют буфер значением 0xFD.Для отключения данного поведения используйте _CrtSetDebugFillThreshold.
Универсальное текстовое сопоставление функций
Функция 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, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, _wcslwr_s_l.
Эквивалент в .NET Framework
См. также
Ссылки
Интерпретация последовательностей многобайтового символов
_strlwr_s, _strlwr_s_l, _mbslwr_s, _mbslwr_s_l, _wcslwr_s, _wcslwr_s_l