sed.h

来自「这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易」· C头文件 代码 · 共 179 行

H
179
字号
#/* * sed -- stream  editor * * */#define CBRA	1#define	CCHR	2#define	CDOT	4#define	CCL	6#define	CNL	8#define	CDOL	10#define	CEOF	11#define CKET	12#define CNULL	13#define CLNUM	14#define CEND	16#define CDONT	17#define	CBACK	18#define	STAR	01#define NLINES	256#define	DEPTH	20#define PTRSIZE	1024#define RESIZE	20000#define	ABUFSIZE	20#define	LBSIZE	4000#define	LABSIZE	50#define NBRA	9typedef unsigned char uchar;FILE	*fin;union reptr	*abuf[ABUFSIZE];union reptr **aptr;uchar	*lastre;uchar	ibuf[512];uchar	*cbp;uchar	*ebp;uchar	genbuf[LBSIZE];uchar	*loc1;uchar	*loc2;uchar	*locs;uchar	seof;uchar	*reend;uchar	*lbend;uchar	*hend;uchar	*lcomend;union reptr	*ptrend;int	eflag;int	dolflag;int	sflag;int	jflag;int	numbra;int	delflag;long	lnum;uchar	linebuf[LBSIZE+1];uchar	holdsp[LBSIZE+1];uchar	*spend;uchar	*hspend;int	nflag;int	gflag;uchar	*braelist[NBRA];uchar	*braslist[NBRA];long	tlno[NLINES];int	nlno;#define MAXFILES	120char	fname[MAXFILES][40];FILE	*fcode[MAXFILES];int	nfiles;#define ACOM	01#define BCOM	020#define CCOM	02#define	CDCOM	025#define	CNCOM	022#define COCOM	017#define	CPCOM	023#define DCOM	03#define ECOM	015#define EQCOM	013#define FCOM	016#define GCOM	027#define CGCOM	030#define HCOM	031#define CHCOM	032#define ICOM	04#define LCOM	05#define NCOM	012#define PCOM	010#define QCOM	011#define RCOM	06#define SCOM	07#define TCOM	021#define WCOM	014#define	CWCOM	024#define	YCOM	026#define XCOM	033uchar	*cp;uchar	*reend;uchar	*lbend;union	reptr {	struct reptr1 {		uchar	*ad1;		uchar	*ad2;		uchar	*re1;		uchar	*rhs;		FILE	*fcode;		uchar	command;		uchar	gfl;		uchar	pfl;		uchar	inar;		uchar	negfl;	} r1;	struct reptr2 {		uchar	*ad1;		uchar	*ad2;		union reptr	*lb1;		uchar	*rhs;		FILE	*fcode;		uchar	command;		uchar	gfl;		uchar	pfl;		uchar	inar;		uchar	negfl;	} r2;} ptrspace[PTRSIZE], *rep;uchar	respace[RESIZE];struct label {	uchar	asc[9];	union reptr	*chain;	union reptr	*address;} ltab[LABSIZE];struct label	*lab;struct label	*labend;int	f;int	depth;int	eargc;uchar	**eargv;uchar	*address(uchar *);int		advance(uchar *, uchar *);void	arout(void);extern	uchar	bittab[];uchar	bad;uchar	*badp;int		cmp(uchar *, uchar *);union reptr	**cmpend[DEPTH];void	command(union reptr *);uchar	compfl;uchar	*compile(uchar *);uchar	*compsub(uchar *);void	dechain(void);int	depth;void	dosub(uchar *);int		ecmp(uchar *, uchar *, int);void	execute(uchar *);void		fcomp(void);uchar	*gline(uchar *);uchar	*lformat(int, uchar *);int		match(uchar *, int);union reptr	*pending;uchar	*place(uchar *, uchar *, uchar *);int		rline(uchar *);struct label	*search(struct label *);int		substitute(union reptr *);uchar	*text(uchar *);uchar	*ycomp(uchar *);

⌨️ 快捷键说明

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