Subversion Repositories Kolibri OS

Rev

Rev 4874 | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1.  
  2. /*
  3. FUNCTION
  4. <<ispunct>>---punctuation character predicate
  5.  
  6. INDEX
  7. ispunct
  8.  
  9. ANSI_SYNOPSIS
  10. #include <ctype.h>
  11. int ispunct(int <[c]>);
  12.  
  13. TRAD_SYNOPSIS
  14. #include <ctype.h>
  15. int ispunct(<[c]>);
  16.  
  17. DESCRIPTION
  18. <<ispunct>> is a macro which classifies ASCII integer values by table
  19. lookup.  It is a predicate returning non-zero for printable
  20. punctuation characters, and 0 for other characters.  It is defined only
  21. if <[c]> is representable as an unsigned char or if <[c]> is EOF.
  22.  
  23. You can use a compiled subroutine instead of the macro definition by
  24. undefining the macro using `<<#undef ispunct>>'.
  25.  
  26. RETURNS
  27. <<ispunct>> returns non-zero if <[c]> is a printable punctuation character
  28. (<<isgraph(<[c]>) && !isalnum(<[c]>)>>).
  29.  
  30. PORTABILITY
  31. <<ispunct>> is ANSI C.
  32.  
  33. No supporting OS subroutines are required.
  34. */
  35.  
  36. #include <_ansi.h>
  37. #include <ctype.h>
  38.  
  39.  
  40. #undef ispunct
  41. int
  42. _DEFUN(ispunct,(c),int c)
  43. {
  44.         return(__ctype_ptr__[c+1] & _P);
  45. }
  46.  
  47.