Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::towupper(3)	      C++ Standard Libary	      std::towupper(3)

NAME
       std::towupper - std::towupper

Synopsis
	  Defined in header <cwctype>
	  std::wint_t towupper(	std::wint_t ch );

	  Converts the given wide character to uppercase, if possible.

	  If  the  value of ch is neither representable	as a wchar_t nor equal
       to the value of
	  the macro WEOF, the behavior is undefined.

Parameters
	  ch - wide character to be converted

Return value
	  Uppercase version of ch or unmodified	ch if no uppercase version  is
       listed in the
	  current C locale.

Notes
	  Only	1:1  character mapping can be performed	by this	function, e.g.
       the uppercase
	  form of '' is	(with some exceptions) the two-character string	 "SS",
       which cannot
	  be obtained by std::towupper.

	  ISO  30112  specifies	which pairs of Unicode characters are included
       in this mapping.

Example
	  The latin letter '' (U+017F) is the alternative  lowercase  form  of
       'S' (U+0053)

       // Run this code

	#include <iostream>
	#include <cwctype>
	#include <clocale>

	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(" <<	(std::wint_t)c
       << ") = "
		      << std::towupper(c) << '\n';
	    std::setlocale(LC_ALL, "en_US.utf8");
	    std::cout << "in Unicode locale, towupper("	<<  (std::wint_t)c  <<
       ") = "
		      << std::towupper(c) << '\n';
	}

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

See also
	  towlower	       converts	a wide character to lowercase
			       (function)
			       converts	 a  character  to  uppercase using the
       ctype facet of a
	  toupper(std::locale) locale
			       (function template)
	  toupper	       converts	a character to uppercase
			       (function)

http://cppreference.com		  2022.07.31		      std::towupper(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::towupper&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help