tail head cat sleep
QR code linking to this page

Manual Pages  — ISCNTRL


iscntrl – control character test



Standard C Library (libc, -lc)


#include <ctype.h>

iscntrl(int c);

iscntrl_l(int c, locale_t loc);


The iscntrl() function tests for any control character. The value of the argument must be representable as an unsigned char or the value of EOF.

In the ASCII character set, this includes the following characters (with their numeric values shown in octal):

amp;000 NUL
001 SOH 002 STX 003 ETX 004 EOT

amp;005 ENQ
006 ACK 007 BEL 010 BS 011 HT

amp;012 NL
013 VT 014 NP 015 CR 016 SO

amp;017 SI
020 DLE 021 DC1 022 DC2 023 DC3

amp;024 DC4
025 NAK 026 SYN 027 ETB 030 CAN

amp;031 EM
032 SUB 033 ESC 034 FS 035 GS

amp;036 RS
037 US 177 DEL amp; amp;

The iscntrl_l() function takes an explicit locale argument, whereas the iscntrl() function uses the current global or per-thread locale.


The iscntrl() function returns zero if the character tests false and returns non-zero if the character tests true.


The BSD 4.4 extension of accepting arguments outside of the range of the unsigned char type in locales with large character sets is considered obsolete and may not be supported in future releases. The iswcntrl() function should be used instead.


ctype(3), iswcntrl(3), xlocale(3), ascii(7)


The iscntrl() function conforms to ISO/IEC 9899:1990 ("ISO C90"). The iscntrl_l() function conforms to IEEE Std 1003.1-2008 ("POSIX.1").

ISCNTRL (3) July 17, 2005

tail head cat sleep
QR code linking to this page

Please direct any comments about this manual page service to Ben Bullock. Privacy policy.

Modern Unix impedes progress in computer science, wastes billions of dollars, and destroys the common sense of many who seriously use it.
— The Unix Haters' handbook