X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=functions%2Fctype%2Fisprint.c;fp=functions%2Fctype%2Fisprint.c;h=f057e002e4d53ae41706949ae259c214002358d4;hb=3a92b78272cd3f0f413bb1cfc0c77deef49967fd;hp=0000000000000000000000000000000000000000;hpb=be35e77c0d824e5bd545620ca81c812f9e16f0e5;p=pdclib.old diff --git a/functions/ctype/isprint.c b/functions/ctype/isprint.c new file mode 100644 index 0000000..f057e00 --- /dev/null +++ b/functions/ctype/isprint.c @@ -0,0 +1,36 @@ +/* $Id$ */ + +/* isprint( int ) + + This file is part of the Public Domain C Library (PDCLib). + Permission is granted to use, modify, and / or redistribute at will. +*/ + +#include + +#ifndef REGTEST + +int isprint( int c ) +{ + return ( _PDCLIB_locale_info.ctype[c].flags & _PDCLIB_CTYPE_GRAPH ) || ( c == ' ' ); +} + +#endif + +#ifdef TEST +#include <_PDCLIB_test.h> + +int main( void ) +{ + TESTCASE( isprint( 'a' ) ); + TESTCASE( isprint( 'z' ) ); + TESTCASE( isprint( 'A' ) ); + TESTCASE( isprint( 'Z' ) ); + TESTCASE( isprint( '@' ) ); + TESTCASE( ! isprint( '\t' ) ); + TESTCASE( ! isprint( '\0' ) ); + TESTCASE( isprint( ' ' ) ); + return TEST_RESULTS; +} + +#endif