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

FreeBSD Manual Pages

  
 
  

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

NAME
       std::iswcntrl - std::iswcntrl

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

	  Checks  if  the  given  wide	character is a control character, i.e.
       codes 0x00-0x1F and
	  0x7F and any control characters specific to the current 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 is a control character, zero
       otherwise.

Notes
	  ISO 30112 defines POSIX control  characters  as  Unicode  characters
       U+0000..U+001F,
	  U+007F..U+009F, U+2028, and U+2029 (Unicode classes Cc, Zl, and Zp).

Example
       // Run this code

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

	int main()
	{
	    wchar_t c =	L'\u2028'; // the Unicode character "line separator"

	    std::cout << std::hex << std::showbase << std::boolalpha;
	    std::cout  << "in the default locale, iswcntrl(" <<	(std::wint_t)c
       << ") = "
		      << (bool)std::iswcntrl(c)	<< '\n';
	    std::setlocale(LC_ALL, "en_US.utf8");
	    std::cout << "in Unicode locale, iswcntrl("	<<  (std::wint_t)c  <<
       ") = "
		      << (bool)std::iswcntrl(c)	<< '\n';
	}

Output:
	in the default locale, iswcntrl(0x2028)	= false
	in Unicode locale, iswcntrl(0x2028) = true

See also
			       checks  if  a character is classified as	a con-
       trol character by a
	  iscntrl(std::locale) locale
			       (function template)
	  iscntrl	       checks if a character is	a control character
			       (function)
	  C documentation for
	  iswcntrl

	       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::iswcntrl(3)

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

home | help