isprint, isgraph, isprint_l, isgraph_l—printable character predicatesSynopsis
#include <ctype.h> int isprint(int c); int isgraph(int c); #include <ctype.h> int isprint_l(int c, locale_t locale); int isgraph_l(int c, locale_t locale);
Description
isprint is a macro which classifies singlebyte charset values by table
lookup. It is a predicate returning non-zero for printable characters,
and 0 for other character arguments. It is defined only if c is
representable as an unsigned char or if c is EOF.
isgraph behaves identically to isprint, except that space characters
are excluded.
isprint_l, isgraph_l are like isprint, isgraph but perform
the check based on the locale specified by the locale object locale. If
locale is LC_GLOBAL_LOCALE or not a valid locale object, the behaviour
is undefined.
You can use a compiled subroutine instead of the macro definition by
undefining either macro using ‘#undef isprint’ or ‘#undef isgraph’,
or ‘#undef isprint_l’ or ‘#undef isgraph_l’.
Returns
isprint, isprint_l return non-zero if c is a printing character.
isgraph, isgraph_l return non-zero if c is a printing character
except spaces.
Portability
isprint and isgraph are ANSI C.
No supporting OS subroutines are required.