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

NAME
     std::iswprint - std::iswprint

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

	Checks	if  the given wide character can be printed, i.e. it is either a
     number
	(0123456789), an uppercase letter (ABCDEFGHIJKLMNOPQRSTUVWXYZ), a lower-
     case letter
	(abcdefghijklmnopqrstuvwxyz), a punctuation character
	(!"#$%&'()*+,-./:;<=>?@[\]^_`{!}~), space  or  any  printable  character
     specific to the
	current C locale.

	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

Return value
	Non-zero value if the wide character can be printed, zero otherwise.

Notes
	ISO 30112 specifies which Unicode characters are include in POSIX  print
     category.

Example
     // Run this code

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

      void demo_iswprint(std::string_view rem, const std::wint_t c)
      {
	  std::cout << std::boolalpha << std::hex << std::showbase
		    << rem << "iswprint('" << c << "') = "
		    << !!std::iswprint(c) << '\n';
      }

      int main()
      {
	  const wchar_t c1 = L'\u2002'; // en-space
	  const wchar_t c2 = L'\u0082'; // break permitted

	  demo_iswprint("In default locale:\n", c1);

	  std::setlocale(LC_ALL, "en_US.utf8");
	  demo_iswprint("In Unicode locale:\n", c1);
	  demo_iswprint("", c2);
      }

Possible output:
      In default locale:
      iswprint('0x2002') = false
      In Unicode locale:
      iswprint('0x2002') = true
      iswprint('0x82') = false

See also
	isprint(std::locale) checks if a character is classified as printable by
     a locale
			     (function template)
	isprint 	     checks if a character is a printing character
			     (function)
	C documentation for
	iswprint

	     ASCII  values	       characters     iscntrl	isprint  isspace
     isblank  isgraph  ispunct	 isalnum   isalpha   isupper   islower	 isdigit
     isxdigit  decimal	hexadecimal    octal		       iswcntrl iswprint
     iswspace iswblank iswgraph iswpunct  iswalnum  iswalpha  iswupper	iswlower
     iswdigit  iswxdigit  0a8	   \x0a\x8	\0a\10	   control  codes    a 0
     0	      0        0	0	 0	  0	   0	     0	       0
     0	      0
				   (NUL,    etc.)    9	       \x9	     \11
     tab (\t)	     a 0       0	a 0	  a 0	    0	     0	       0
     0	      0        0	0	 0
				   whitespaces	 10a13	   \xAa\xD	 \12a\15
     (\n, \v, \f,    a 0       0	a 0	  0	   0	     0	       0
     0	      0        0	0	 0
				   \r)	14a31	 \xEa\x1F     \16a\37	 control
     codes   a 0       0	0	 0	  0	   0	     0	       0
     0		0	   0	      0   32	   \x20 	\40	   space
     0	      a 0	 a  0	     a	0	 0	   0	     0	       0
     0	       0	0	 0 33a47   \x21a\x2F   \41a\57	 !"#$%&'()*+,-./
     0	      a 0	 0	   0	     a	0	 a  0	     0	       0
     0	       0	 0	   0  48a57    \x30a\x39    \60a\71   0123456789
     0	      a 0	 0	   0	     a	0	 0	   a  0        0
     0	       0	 a  0	     a	0  58a64   \x3Aa\x40   \72a\100  :;<=>?@
     0	      a 0	 0	   0	     a	0	 a  0	     0	       0
     0		0	   0	      0  65a70	  \x41a\x46    \101a\106  ABCDEF
     0	      a 0	0	 0	  a  0	      0 	a  0	    a  0
     a	0	 0	   0	    a 0 71a90	\x47a\x5A   \107a\132 GHIJKLMNOP
     0	      a 0	0	 0	  a  0	      0 	a  0	    a  0
     a 0       0	0	 0
				   QRSTUVWXYZ	91a96	  \x5Ba\x60    \133a\140
     [\]^_`	     0	      a 0	0	 0	  a 0	    a 0        0
     0	       0	0	 0	  0 97a102  \x61a\x66	\141a\146 abcdef
     0	      a 0	0	 0	  a  0	      0 	a  0	    a  0
     0	       a  0	   0	    a 0 103a122 \x67a\x7A   \147a\172 ghijklmnop
     0	      a 0	0	 0	  a  0	      0 	a  0	    a  0
     0	      a 0	0	 0
				   qrstuvwxyz 123a126 \x7Ba\x7E   \172a\176 {|}~
     0	       a  0	   0	     0	       a  0	   a  0       0        0
     0	       0	 0	   0  127      \x7F	    \177       backspace
     a	0	0	 0	  0	   0	    0	     0	      0        0
     0	      0        0
				   character (DEL)

http://cppreference.com 	   2024.06.10			std::iswprint(3)

home | help