⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lex.yy.c

📁 編譯器的虛擬yacc工具
💻 C
📖 第 1 页 / 共 2 页
字号:
0, 21,0, 28,35,0, 35,0, 35,0, 35,0, 49,50,0, 43,0, 47,0, 13,0, 13,0, 25,35,0, 35,0, 14,0, 35,0, 7,0, 11,0, 9,0, 35,0, 8,0, 6,0, 22,0, 24,35,0, 10,0, 0};# define YYTYPE unsigned charstruct yywork { YYTYPE verify, advance; } yycrank[] = {0,0,	0,0,	1,17,	0,0,	0,0,	0,0,	3,29,	0,0,	5,31,	0,0,	1,18,	1,19,	0,0,	0,0,	3,29,	3,30,	5,31,	5,32,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	7,34,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	7,35,	7,36,	14,60,	0,0,	1,20,	6,33,	1,21,	53,53,	9,47,	16,64,	5,33,	0,0,	2,20,	0,0,	2,21,	1,22,	9,47,	9,48,	12,54,	3,29,	0,0,	5,31,	0,0,	12,55,	0,0,	1,23,	1,24,	1,25,	0,0,	1,26,	53,53,	8,38,	1,22,	2,23,	2,24,	2,25,	3,29,	2,26,	5,31,	7,37,	61,83,	52,82,	52,53,	65,84,	74,92,	93,104,	0,0,	0,0,	0,0,	20,66,	7,38,	0,0,	0,0,	0,0,	0,0,	9,47,	7,39,	0,0,	0,0,	0,0,	14,61,	0,0,	16,65,	8,40,	52,82,	8,41,	0,0,	0,0,	0,0,	0,0,	11,51,	0,0,	9,47,	0,0,	0,0,	0,0,	0,0,	8,42,	11,52,	11,53,	13,58,	0,0,	7,40,	0,0,	7,41,	0,0,	0,0,	8,43,	13,58,	13,59,	1,27,	1,28,	8,44,	98,107,	99,108,	8,45,	7,42,	8,46,	2,27,	2,28,	10,49,	67,85,	10,50,	11,54,	70,88,	72,91,	7,43,	12,56,	11,55,	12,57,	15,62,	7,44,	68,86,	13,60,	7,45,	69,87,	7,46,	11,51,	15,62,	15,63,	20,67,	33,77,	20,68,	71,89,	20,69,	85,97,	20,70,	13,58,	20,71,	20,72,	9,49,	21,74,	9,50,	71,90,	11,51,	20,73,	86,98,	87,99,	88,100,	21,74,	21,0,	89,101,	90,102,	91,103,	13,58,	97,106,	100,109,	101,110,	15,64,	102,111,	103,112,	107,114,	109,115,	110,116,	112,117,	114,119,	119,120,	15,62,	39,79,	39,79,	39,79,	39,79,	39,79,	39,79,	39,79,	39,79,	39,79,	39,79,	120,121,	0,0,	0,0,	13,61,	0,0,	0,0,	15,62,	0,0,	0,0,	0,0,	21,74,	0,0,	0,0,	43,79,	43,79,	43,79,	43,79,	43,79,	43,79,	43,79,	43,79,	43,79,	43,79,	0,0,	11,56,	0,0,	11,57,	21,74,	0,0,	0,0,	0,0,	0,0,	0,0,	15,65,	0,0,	0,0,	0,0,	0,0,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	21,75,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	43,81,	0,0,	0,0,	0,0,	22,76,	0,0,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	22,76,	37,78,	37,78,	37,78,	37,78,	37,78,	37,78,	37,78,	37,78,	37,78,	37,78,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	0,0,	0,0,	0,0,	0,0,	37,79,	0,0,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	37,79,	42,79,	42,79,	42,79,	42,79,	42,79,	42,79,	42,79,	42,79,	42,79,	42,79,	44,79,	44,79,	44,79,	44,79,	44,79,	44,79,	44,79,	44,79,	44,79,	44,79,	75,93,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	75,93,	75,0,	79,79,	79,79,	79,79,	79,79,	79,79,	79,79,	79,79,	79,79,	79,79,	79,79,	80,79,	80,79,	80,79,	80,79,	80,79,	80,79,	80,79,	80,79,	80,79,	80,79,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	75,94,	0,0,	0,0,	0,0,	42,80,	0,0,	0,0,	0,0,	0,0,	75,93,	81,79,	81,79,	81,79,	81,79,	81,79,	81,79,	81,79,	81,79,	81,79,	81,79,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	75,93,	95,79,	95,79,	95,79,	95,79,	95,79,	95,79,	95,79,	95,79,	95,79,	95,79,	96,79,	96,79,	96,79,	96,79,	96,79,	96,79,	96,79,	96,79,	96,79,	96,79,	0,0,	0,0,	0,0,	80,95,	105,79,	105,79,	105,79,	105,79,	105,79,	105,79,	105,79,	105,79,	105,79,	105,79,	113,79,	113,79,	113,79,	113,79,	113,79,	113,79,	113,79,	113,79,	113,79,	113,79,	0,0,	0,0,	0,0,	0,0,	0,0,	81,96,	118,79,	118,79,	118,79,	118,79,	118,79,	118,79,	118,79,	118,79,	118,79,	118,79,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	105,113,	0,0,	0,0,	0,0,	96,105,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	0,0,	113,118,	0,0,	0,0,	0,0};struct yysvf yysvec[] = {0,	0,	0,yycrank+-1,	0,		0,	yycrank+-9,	yysvec+1,	0,	yycrank+-5,	0,		0,	yycrank+0,	yysvec+3,	0,	yycrank+-7,	0,		0,	yycrank+-2,	yysvec+5,	0,	yycrank+-25,	0,		0,	yycrank+-6,	yysvec+7,	0,	yycrank+-41,	0,		0,	yycrank+-11,	yysvec+9,	0,	yycrank+-103,	0,		0,	yycrank+-18,	yysvec+11,	0,	yycrank+-113,	0,		0,	yycrank+-2,	yysvec+13,	0,	yycrank+-143,	0,		0,	yycrank+-4,	yysvec+15,	0,	yycrank+0,	0,		yyvstop+1,yycrank+0,	0,		yyvstop+3,yycrank+0,	0,		yyvstop+6,yycrank+46,	0,		yyvstop+8,yycrank+-164,	0,		yyvstop+10,yycrank+192,	0,		yyvstop+12,yycrank+0,	0,		yyvstop+15,yycrank+0,	0,		yyvstop+18,yycrank+0,	0,		yyvstop+21,yycrank+0,	0,		yyvstop+24,yycrank+0,	0,		yyvstop+27,yycrank+0,	0,		yyvstop+30,yycrank+0,	0,		yyvstop+33,yycrank+0,	0,		yyvstop+35,yycrank+0,	0,		yyvstop+37,yycrank+0,	0,		yyvstop+39,yycrank+30,	0,		yyvstop+41,yycrank+0,	0,		yyvstop+43,yycrank+0,	0,		yyvstop+45,yycrank+0,	0,		yyvstop+48,yycrank+267,	0,		yyvstop+50,yycrank+0,	0,		yyvstop+54,yycrank+144,	yysvec+37,	yyvstop+57,yycrank+0,	0,		yyvstop+60,yycrank+0,	0,		yyvstop+63,yycrank+342,	yysvec+37,	yyvstop+66,yycrank+167,	yysvec+37,	yyvstop+69,yycrank+352,	yysvec+37,	yyvstop+72,yycrank+0,	0,		yyvstop+76,yycrank+0,	0,		yyvstop+79,yycrank+0,	0,		yyvstop+82,yycrank+0,	0,		yyvstop+84,yycrank+0,	0,		yyvstop+86,yycrank+0,	0,		yyvstop+89,yycrank+0,	0,		yyvstop+92,yycrank+66,	0,		yyvstop+94,yycrank+32,	yysvec+52,	yyvstop+98,yycrank+0,	0,		yyvstop+100,yycrank+0,	0,		yyvstop+103,yycrank+0,	0,		yyvstop+106,yycrank+0,	0,		yyvstop+109,yycrank+0,	0,		yyvstop+112,yycrank+0,	0,		yyvstop+114,yycrank+0,	0,		yyvstop+116,yycrank+40,	0,		yyvstop+119,yycrank+0,	0,		yyvstop+121,yycrank+0,	0,		yyvstop+123,yycrank+0,	0,		yyvstop+125,yycrank+38,	0,		yyvstop+128,yycrank+0,	0,		yyvstop+130,yycrank+34,	0,		0,	yycrank+35,	0,		0,	yycrank+35,	0,		0,	yycrank+33,	0,		0,	yycrank+46,	0,		0,	yycrank+29,	0,		0,	yycrank+0,	0,		yyvstop+132,yycrank+39,	0,		0,	yycrank+-409,	0,		0,	yycrank+0,	yysvec+22,	yyvstop+134,yycrank+0,	0,		yyvstop+136,yycrank+0,	yysvec+37,	yyvstop+138,yycrank+372,	yysvec+37,	yyvstop+141,yycrank+382,	yysvec+37,	yyvstop+143,yycrank+410,	yysvec+37,	yyvstop+145,yycrank+0,	yysvec+52,	yyvstop+147,yycrank+0,	0,		yyvstop+150,yycrank+0,	0,		yyvstop+152,yycrank+57,	0,		0,	yycrank+60,	0,		0,	yycrank+70,	0,		0,	yycrank+69,	0,		0,	yycrank+68,	0,		0,	yycrank+64,	0,		0,	yycrank+72,	0,		0,	yycrank+0,	0,		yyvstop+154,yycrank+40,	0,		0,	yycrank+0,	yysvec+93,	yyvstop+156,yycrank+427,	yysvec+37,	yyvstop+158,yycrank+437,	yysvec+37,	yyvstop+161,yycrank+63,	0,		0,	yycrank+30,	0,		0,	yycrank+29,	0,		0,	yycrank+76,	0,		0,	yycrank+80,	0,		0,	yycrank+82,	0,		0,	yycrank+73,	0,		0,	yycrank+0,	0,		yyvstop+163,yycrank+451,	yysvec+37,	yyvstop+165,yycrank+0,	0,		yyvstop+167,yycrank+70,	0,		0,	yycrank+0,	0,		yyvstop+169,yycrank+70,	0,		0,	yycrank+77,	0,		0,	yycrank+0,	0,		yyvstop+171,yycrank+78,	0,		0,	yycrank+461,	yysvec+37,	yyvstop+173,yycrank+74,	0,		0,	yycrank+0,	0,		yyvstop+175,yycrank+0,	0,		yyvstop+177,yycrank+0,	0,		yyvstop+179,yycrank+477,	yysvec+37,	yyvstop+181,yycrank+79,	0,		0,	yycrank+103,	0,		0,	yycrank+0,	0,		yyvstop+184,0,	0,	0};struct yywork *yytop = yycrank+577;struct yysvf *yybgin = yysvec+1;char yymatch[] = {  0,   1,   1,   1,   1,   1,   1,   1,   1,   9,  10,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   9,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,  48,  48,  48,  48,  48,  48,  48,  48,  48,  48,   1,   1,   1,   1,   1,   1,   1,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,   1,   1,   1,   1,  65,   1,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,  65,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1,   1, 0};char yyextra[] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};/*	Copyright (c) 1989 AT&T	*//*	  All Rights Reserved  	*//*	THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T	*//*	The copyright notice above does not evidence any   	*//*	actual or intended publication of such source code.	*/#pragma ident	"@(#)ncform	6.11	97/01/06 SMI"extern long yylineno,yycharno,yytok,yybline;# define YYU(x) x# define NLSTATE yyprevious=YYNEWLINEstruct yysvf *yylstate [YYLMAX], **yylsp, **yyolsp;char yysbuf[YYLMAX];char *yysptr = yysbuf;int *yyfnd;extern struct yysvf *yyestate;int yyprevious = YYNEWLINE;#if defined(__cplusplus) || defined(__STDC__)int yylook(void)#elseyylook()#endif{	register struct yysvf *yystate, **lsp;	register struct yywork *yyt;	struct yysvf *yyz;	int yych, yyfirst;	struct yywork *yyr;# ifdef LEXDEBUG	int debug;# endif	char *yylastch;	/* start off machines */# ifdef LEXDEBUG	debug = 0;# endif	yyfirst=1;	yytok=yycharno+1;if (!yymorfg)		yylastch = yytext;	else {		yymorfg=0;		yylastch = yytext+yyleng;		}	for(;;){		lsp = yylstate;		yyestate = yystate = yybgin;		if (yyprevious==YYNEWLINE) yystate++;		for (;;){# ifdef LEXDEBUG			if(debug)fprintf(yyout,"state %d\n",yystate-yysvec-1);# endif			yyt = yystate->yystoff;			if(yyt == yycrank && !yyfirst){  /* may not be any transitions */				yyz = yystate->yyother;				if(yyz == 0)break;				if(yyz->yystoff == yycrank)break;				}#ifndef __cplusplus			*yylastch++ = yych = input();#else			*yylastch++ = yych = lex_input();#endif#ifdef YYISARRAY			if(yylastch > &yytext[YYLMAX]) {				fprintf(yyout,"Input string too long, limit %d\n",YYLMAX);				exit(1);			}#else			if (yylastch >= &yytext[ yytextsz ]) {				int	x = yylastch - yytext;				yytextsz += YYTEXTSZINC;				if (yytext == yy_tbuf) {				    yytext = (char *) malloc(yytextsz);				    memcpy(yytext, yy_tbuf, sizeof (yy_tbuf));				}				else				    yytext = (char *) realloc(yytext, yytextsz);				if (!yytext) {				    fprintf(yyout,					"Cannot realloc yytext\n");				    exit(1);				}				yylastch = yytext + x;			}#endif			yyfirst=0;		tryagain:# ifdef LEXDEBUG			if(debug){				fprintf(yyout,"char ");				allprint(yych);				putchar('\n');				}# endif			yyr = yyt;			if ( (int)yyt > (int)yycrank){				yyt = yyr + yych;				if (yyt <= yytop && yyt->verify+yysvec == yystate){					if(yyt->advance+yysvec == YYLERR)	/* error transitions */						{unput(*--yylastch);break;}					*lsp++ = yystate = yyt->advance+yysvec;					if(lsp > &yylstate[YYLMAX]) {						fprintf(yyout,"Input string too long, limit %d\n",YYLMAX);						exit(1);					}					goto contin;					}				}# ifdef YYOPTIM			else if((int)yyt < (int)yycrank) {		/* r < yycrank */				yyt = yyr = yycrank+(yycrank-yyt);# ifdef LEXDEBUG				if(debug)fprintf(yyout,"compressed state\n");# endif				yyt = yyt + yych;				if(yyt <= yytop && yyt->verify+yysvec == yystate){					if(yyt->advance+yysvec == YYLERR)	/* error transitions */						{unput(*--yylastch);break;}					*lsp++ = yystate = yyt->advance+yysvec;					if(lsp > &yylstate[YYLMAX]) {						fprintf(yyout,"Input string too long, limit %d\n",YYLMAX);						exit(1);					}					goto contin;					}				yyt = yyr + YYU(yymatch[yych]);# ifdef LEXDEBUG				if(debug){					fprintf(yyout,"try fall back character ");					allprint(YYU(yymatch[yych]));					putchar('\n');					}# endif				if(yyt <= yytop && yyt->verify+yysvec == yystate){					if(yyt->advance+yysvec == YYLERR)	/* error transition */						{unput(*--yylastch);break;}					*lsp++ = yystate = yyt->advance+yysvec;					if(lsp > &yylstate[YYLMAX]) {						fprintf(yyout,"Input string too long, limit %d\n",YYLMAX);						exit(1);					}					goto contin;					}				}			if ((yystate = yystate->yyother) && (yyt= yystate->yystoff) != yycrank){# ifdef LEXDEBUG				if(debug)fprintf(yyout,"fall back to state %d\n",yystate-yysvec-1);# endif				goto tryagain;				}# endif			else				{unput(*--yylastch);break;}		contin:# ifdef LEXDEBUG			if(debug){				fprintf(yyout,"state %d char ",yystate-yysvec-1);				allprint(yych);				putchar('\n');				}# endif			;			}# ifdef LEXDEBUG		if(debug){			fprintf(yyout,"stopped at %d with ",*(lsp-1)-yysvec-1);			allprint(yych);			putchar('\n');			}# endif		while (lsp-- > yylstate){			*yylastch-- = 0;			if (*lsp != 0 && (yyfnd= (*lsp)->yystops) && *yyfnd > 0){				yyolsp = lsp;				if(yyextra[*yyfnd]){		/* must backup */					while(yyback((*lsp)->yystops,-*yyfnd) != 1 && lsp > yylstate){						lsp--;						unput(*yylastch--);						}					}				yyprevious = YYU(*yylastch);				yylsp = lsp;				yyleng = yylastch-yytext+1;				yytext[yyleng] = 0;# ifdef LEXDEBUG				if(debug){					fprintf(yyout,"\nmatch ");					sprint(yytext);					fprintf(yyout," action %d\n",*yyfnd);					}# endif				return(*yyfnd++);				}			unput(*yylastch);			}		if (yytext[0] == 0  /* && feof(yyin) */)			{			yysptr=yysbuf;			return(0);			}#ifndef __cplusplus		yyprevious = yytext[0] = input();		if (yyprevious>0)			output(yyprevious);#else		yyprevious = yytext[0] = lex_input();		if (yyprevious>0)			lex_output(yyprevious);#endif		yylastch=yytext;# ifdef LEXDEBUG		if(debug)putchar('\n');# endif		}	}#if defined(__cplusplus) || defined(__STDC__)int yyback(int *p, int m)#elseyyback(p, m)	int *p;#endif{	if (p==0) return(0);	while (*p) {		if (*p++ == m)			return(1);	}	return(0);}	/* the following are only used in the lex library */#if defined(__cplusplus) || defined(__STDC__)int yyinput(void)#elseyyinput()#endif{#ifndef __cplusplus	return(input());#else	return(lex_input());#endif	}#if defined(__cplusplus) || defined(__STDC__)void yyoutput(int c)#elseyyoutput(c)  int c; #endif{#ifndef __cplusplus	output(c);#else	lex_output(c);#endif	}#if defined(__cplusplus) || defined(__STDC__)void yyunput(int c)#elseyyunput(c)   int c; #endif{	unput(c);	}

⌨️ 快捷键说明

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