std:: toupper (std::locale)
| Localization library | |||||||||||||||||||||||||
| Regular expressions library (C++11) | |||||||||||||||||||||||||
| Formatting library (C++20) | |||||||||||||||||||||||||
| Null-terminated sequence utilities | |||||||||||||||||||||||||
| Byte strings | |||||||||||||||||||||||||
| Multibyte strings | |||||||||||||||||||||||||
| Wide strings | |||||||||||||||||||||||||
| Primitive numeric conversions | |||||||||||||||||||||||||
|
|||||||||||||||||||||||||
| Text encoding identifications | |||||||||||||||||||||||||
|
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Definido en el encabezado
<locale>
|
||
|
template
<
class
CharT
>
CharT toupper ( CharT ch, const locale & loc ) ; |
||
Convierte el carácter ch a mayúsculas si es posible, utilizando las reglas de conversión especificadas por el facet std::ctype de la configuración regional dada.
Contenidos |
Parámetros
| ch | - | carácter |
| loc | - | configuración regional |
Valor de retorno
Devuelve la forma en mayúsculas de ch si está listada en la configuración regional, de lo contrario devuelve ch sin cambios.
Notas
Solo se puede realizar un mapeo de caracteres 1:1 mediante esta función, por ejemplo, la forma en mayúsculas de 'ß' es (con algunas excepciones) la cadena de dos caracteres "SS", la cual no puede obtenerse mediante std::toupper .
Implementación posible
template<class CharT> CharT toupper(CharT ch, const std::locale& loc) { return std::use_facet<std::ctype<CharT>>(loc).toupper(ch); } |
Ejemplo
#include <cwctype> #include <iostream> #include <locale> int main() { wchar_t c = L'\u017f'; // Latin small letter Long S ('ſ') std::cout << std::hex << std::showbase; std::cout << "in the default locale, toupper(" << (std::wint_t)c << ") = " << (std::wint_t)std::toupper(c, std::locale()) << '\n'; std::cout << "in Unicode locale, toupper(" << (std::wint_t)c << ") = " << (std::wint_t)std::toupper(c, std::locale("en_US.utf8")) << '\n'; }
Salida posible:
in the default locale, toupper(0x17f) = 0x17f in Unicode locale, toupper(0x17f) = 0x53
Véase también
convierte un carácter a minúsculas usando el
ctype
facet de una configuración regional
(plantilla de función) |
|
|
convierte un carácter a mayúsculas
(función) |
|
|
convierte un carácter ancho a mayúsculas
(función) |