Reference

iscntrl(3)

control character test

NAME

iscntrl, iscntrl_l – control character test

LIBRARY

Standard C Library (libc, -lc)

SYNOPSIS

#include <ctype.h>

int

iscntrl(int c);

int

iscntrl_l(int c, locale_t loc);

DESCRIPTION

The iscntrl() and iscntrl_l() functions test 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):

000 NUL001 SOH002 STX003 ETX004 EOT
005 ENQ006 ACK007 BEL010 BS011 HT
012 NL013 VT014 NP015 CR016 SO
017 SI020 DLE021 DC1022 DC2023 DC3
024 DC4025 NAK026 SYN027 ETB030 CAN
031 EM032 SUB033 ESC034 FS035 GS
036 RS037 US177 DEL

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

RETURN VALUES

The iscntrl() and iscntrl_l() functions return zero if the character tests false and return non-zero if the character tests true.

COMPATIBILITY

The 4.4BSD 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() or iswcntrl_l() function should be used instead.

SEE ALSO

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

STANDARDS

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

HISTORY

The iscntrl() function first appeared in Version 7 AT&T UNIX.

History