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

FreeBSD Manual Pages

  
 
  

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
       lowercase 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	print-
       able 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  isw-
       print  iswspace	iswblank  iswgraph iswpunct iswalnum iswalpha iswupper
       iswlower	iswdigit iswxdigit 08	  \x0\x8      \0\10	control	 codes
       0	 0	   0	     0	       0	 0	   0	     0
       0	0	 0	  0
				     (NUL,  etc.)   9	     \x9	   \11
       tab (\t)		0	0	  0	   0	   0	    0	     0
       0	0	 0	  0	   0
				     whitespaces   1013	    \xA\xD	\12\15
       (\n, \v,	\f,	0	0	  0	  0	   0	    0	     0
       0	0	 0	  0	   0
				     \r) 1431	 \xE\x1F     \16\37    control
       codes	  0	   0	     0	       0	 0	   0	     0
       0	 0	   0	     0	       0   32	     \x20	   \40
       space	       0	 0	  0	   0	   0	    0	     0
       0	  0	     0	       0	 0  3347    \x21\x2F	\41\57
       !"#$%&'()*+,-./ 0	 0	 0	  0	    0	     0	     0
       0	 0	   0	     0	       0  4857	   \x30\x39	\60\71
       0123456789	 0	     0	      0		0	    0	     0
       0	0	  0	    0		0	   0  5864    \x3A\x40
       \72\100	 :;<=>?@	  0	      0	       0	 0	     0
       0       0	0	 0	  0	   0	    0 6570    \x41\x46
       \101\106	ABCDEF		0	  0	  0	   0	     0	     0
       0	  0	     0	      0		0	    0  7190   \x47\x5A
       \107\132	GHIJKLMNOP	0	  0	  0	   0	     0	     0
       0	0	 0	 0	  0	   0
				     QRSTUVWXYZ	 9196	 \x5B\x60     \133\140
       [\]^_`	       0	 0	 0	  0	    0	     0	     0
       0	0	 0	  0	   0 97102  \x61\x66   \141\146	abcdef
       0	   0	    0	      0		  0	  0	    0	     0
       0	 0	 0	   0  103122  \x67\x7A	  \147\172  ghijklmnop
       0	   0	    0	      0		  0	  0	    0	     0
       0	 0	 0	  0
				     qrstuvwxyz	 123126	 \x7B\x7E     \172\176
       {|}~	       0	 0	 0	  0	    0	     0	     0
       0	  0	     0	       0	 0  127	     \x7F	  \177
       backspace	0	0	 0	  0	   0	    0	     0
       0	0	 0	  0	   0
				     character (DEL)

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

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

home | help