Namespaces
Variants

std:: towupper

From cppreference.net
헤더 파일에 정의됨 <cwctype>

주어진 와이드 문자를 가능한 경우 대문자로 변환합니다.

ch 값이 wchar_t 로 표현 가능하지도 않고 매크로 WEOF 값과 같지도 않으면, 동작은 정의되지 않습니다.

목차

매개변수

ch - 변환할 와이드 문자

반환값

현재 C 로캘에 대문자 버전이 나열되어 있지 않은 경우 ch 의 대문자 버전 또는 수정되지 않은 ch 입니다.

참고 사항

이 함수는 오직 1:1 문자 매핑만 수행할 수 있습니다. 예를 들어, 'ß' 의 대문자 형태는 (일부 예외를 제외하고) 두 문자 문자열인 "SS" 인데, 이것은 std::towupper 로 얻을 수 없습니다.

ISO 30112 는 이 매핑에 포함된 유니코드 문자 쌍들을 지정합니다.

예제

라틴 문자 'ſ' (U+017F) 'S' (U+0053)의 대체 소문자 형태입니다.

#include <clocale>
#include <cwctype>
#include <iostream>
int main()
{
    wchar_t c = L'\u017f'; // Latin small letter Long S ('ſ')
    std::cout << std::hex << std::showbase;
    std::cout << "in the default locale, towupper("
              << static_cast<std::wint_t>(c) << ") = "
              << std::towupper(c) << '\n';
    std::setlocale(LC_ALL, "en_US.utf8");
    std::cout << "in Unicode locale, towupper("
              << static_cast<std::wint_t>(c) << ") = "
              << std::towupper(c) << '\n';
}

출력:

in the default locale, towupper(0x17f) = 0x17f
in Unicode locale, towupper(0x17f) = 0x53

참고 항목

와이드 문자를 소문자로 변환
(함수)
로캘의 ctype 패싯을 사용하여 문자를 대문자로 변환
(함수 템플릿)
문자를 대문자로 변환
(함수)
C 문서 for towupper