X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=functions%2Fctype%2Fisprint.c;fp=functions%2Fctype%2Fisprint.c;h=f057e002e4d53ae41706949ae259c214002358d4;hb=36b77c1eaf2ffddb76ef8ed2e6acd046682875c7;hp=0000000000000000000000000000000000000000;hpb=a441890ee6e346603bf5aeeb8a9694980118319f;p=pdclib 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