diff options
author | Christopher Faylor <me+cygwin@cgf.cx> | 2000-02-17 19:39:46 +0000 |
---|---|---|
committer | Christopher Faylor <me+cygwin@cgf.cx> | 2000-02-17 19:39:46 +0000 |
commit | 43b55bace5fad27af5da7a99784667363b92c45d (patch) | |
tree | 17fe82f6ba0d93b76d10dd73d4945ab81b69db40 /newlib/libc/ctype/ispunct.c | |
parent | 8dabd7496a9eeaca2a7180c0a176059ba9229bb2 (diff) | |
download | gdb-43b55bace5fad27af5da7a99784667363b92c45d.tar.gz |
import newlib-2000-02-17 snapshotnewlib-2000-02-17SNAPSHOT
Diffstat (limited to 'newlib/libc/ctype/ispunct.c')
-rw-r--r-- | newlib/libc/ctype/ispunct.c | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/newlib/libc/ctype/ispunct.c b/newlib/libc/ctype/ispunct.c new file mode 100644 index 00000000000..c5679323c78 --- /dev/null +++ b/newlib/libc/ctype/ispunct.c @@ -0,0 +1,46 @@ + +/* +FUNCTION +<<ispunct>>---punctuation character predicate + +INDEX +ispunct + +ANSI_SYNOPSIS +#include <ctype.h> +int ispunct(int <[c]>); + +TRAD_SYNOPSIS +#include <ctype.h> +int ispunct(<[c]>); + +DESCRIPTION +<<ispunct>> is a macro which classifies ASCII integer values by table +lookup. It is a predicate returning non-zero for printable +punctuation characters, and 0 for other characters. It is defined +only when <<isascii>>(<[c]>) is true or <[c]> is EOF. + +You can use a compiled subroutine instead of the macro definition by +undefining the macro using `<<#undef ispunct>>'. + +RETURNS +<<ispunct>> returns non-zero if <[c]> is a printable punctuation character +(<<isgraph(<[c]>) && !isalnum(<[c]>)>>). + +PORTABILITY +<<ispunct>> is ANSI C. + +No supporting OS subroutines are required. +*/ + +#include <_ansi.h> +#include <ctype.h> + + +#undef ispunct +int +_DEFUN(ispunct,(c),int c) +{ + return((_ctype_ + 1)[c] & _P); +} + |