std:: towupper
|
헤더 파일에 정의됨
<cwctype>
|
||
|
std::
wint_t
towupper
(
std::
wint_t
ch
)
;
|
||
주어진 와이드 문자를 가능한 경우 대문자로 변환합니다.
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
|
|