1 #define _U 01 2 #define _L 02 3 #define _N 04 4 #define _S 010 5 #define _P 020 6 #define _C 040 7 #define _X 0100 8 #define _O 0200 9 10 extern unsigned char _cbtype_[]; /* in /usr/src/libc/gen/ctype_.c */ 11 12 #define isop(c) ((_cbtype_+1)[c]&_O) 13 #define isalpha(c) ((_cbtype_+1)[c]&(_U|_L)) 14 #define isupper(c) ((_cbtype_+1)[c]&_U) 15 #define islower(c) ((_cbtype_+1)[c]&_L) 16 #define isdigit(c) ((_cbtype_+1)[c]&_N) 17 #define isxdigit(c) ((_cbtype_+1)[c]&(_N|_X)) 18 #define isspace(c) ((_cbtype_+1)[c]&_S) 19 #define ispunct(c) ((_cbtype_+1)[c]&_P) 20 #define isalnum(c) ((_cbtype_+1)[c]&(_U|_L|_N)) 21 #define isprint(c) ((_cbtype_+1)[c]&(_P|_U|_L|_N)) 22 #define iscntrl(c) ((_cbtype_+1)[c]&_C) 23 #define isascii(c) ((unsigned)(c)<=0177) 24 #define toupper(c) ((c)-'a'+'A') 25 #define tolower(c) ((c)-'A'+'a') 26 #define toascii(c) ((c)&0177) 27