ctype.h

来自「早期freebsd实现」· C头文件 代码 · 共 53 行

H
53
字号
/*************************************************************************** * This program is Copyright (C) 1986, 1987, 1988 by Jonathan Payne.  JOVE * * is provided to you without charge, and with no warranty.  You may give  * * away copies of JOVE, including sources, provided that this notice is    * * included in all the files.                                              * ***************************************************************************/#define	C_UPPER	01	/* UPPER case */#define	C_LOWER	02	/* LOWER case */#define	C_DIGIT	04	/* DIGIT */#define	C_PUNCT	010	/* PUNCTuation */#define	C_CTRL	020	/* ConTRoL */#define	C_WORD	040	/* WORD */#define	C_BRA	0100	/* open BRAket */#define	C_KET	0200	/* close braKET */extern const unsigned char	*SyntaxTable;	/* CharTable[?] */#define	jiswhite(c)	(jisspace(c))#define	jisword(c)	(SyntaxTable[c]&C_WORD)#define	jisalpha(c)	(SyntaxTable[c]&(C_UPPER|C_LOWER))#define	jisupper(c)	(SyntaxTable[c]&C_UPPER)#define	jislower(c)	(SyntaxTable[c]&C_LOWER)#define	jisdigit(c)	(SyntaxTable[c]&C_DIGIT)#define	jisspace(c)	((c) == ' ' || (c) == '\t')/* #define	jispunct(c)	(SyntaxTable[c]&C_PUNCT) */#define	has_syntax(c,s)	(SyntaxTable[(c)&CHARMASK]&(s))/* #define	toascii(c)	((c)&CHARMASK) */#define	jiscntrl(c)	((CharTable[0][c&CHARMASK])&C_CTRL)#define	jisopenp(c)	((CharTable[0][c&CHARMASK])&C_BRA)#define	jisclosep(c)	((CharTable[0][c&CHARMASK])&C_KET)#ifdef	ASCII7# define	jtolower(c)	((c)|040)#else	/* !ASCII7 */  extern char jtolower proto((int /*char*/));#endif	/* !ASCII7 */#define	WITH_TABLE(x) \{ \	const unsigned char	*push = SyntaxTable; \	SyntaxTable = CharTable[(x)];#define	END_TABLE() \	SyntaxTable = push; \}extern const unsigned char	CharTable[NMAJORS][NCHARS];extern const char	RaiseTable[NCHARS];#define	CharUpcase(c)	(RaiseTable[c])

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?