ctype.h (1222B)
1 #ifndef _CTYPE_H 2 #define _CTYPE_H 3 4 extern int isalnum(int); 5 extern int isalpha(int); 6 extern int islower(int); 7 extern int isupper(int); 8 extern int isdigit(int); 9 extern int isxdigit(int); 10 extern int iscntrl(int); 11 extern int isgraph(int); 12 extern int isspace(int); 13 extern int isblank(int); 14 extern int isprint(int); 15 extern int ispunct(int); 16 extern int tolower(int); 17 extern int toupper(int); 18 19 20 #define _U 0x01 /* upper */ 21 #define _L 0x02 /* lower */ 22 #define _D 0x04 /* digit */ 23 #define _C 0x08 /* cntrl */ 24 #define _P 0x10 /* punct */ 25 #define _S 0x20 /* white space (space/lf/tab) */ 26 #define _X 0x40 /* hex char */ 27 #define _SP 0x80 /* hard space (0x20) */ 28 29 extern const unsigned char __ctype[]; 30 31 #define isalnum(c) ((__ctype+1)[c] & (_U|_L|_D)) 32 #define isalpha(c) ((__ctype+1)[c] & (_U|_L)) 33 #define iscntrl(c) ((__ctype+1)[c] & (_C)) 34 #define isdigit(c) ((__ctype+1)[c] & (_D)) 35 #define isgraph(c) ((__ctype+1)[c] & (_P|_U|_L|_D)) 36 #define islower(c) ((__ctype+1)[c] & (_L)) 37 #define isprint(c) ((__ctype+1)[c] & (_P|_U|_L|_D|_SP)) 38 #define ispunct(c) ((__ctype+1)[c] & (_P)) 39 #define isspace(c) ((__ctype+1)[c] & (_S)) 40 #define isupper(c) ((__ctype+1)[c] & (_U)) 41 #define isxdigit(c) ((__ctype+1)[c] & (_D|_X)) 42 43 #endif