亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? counter.c

?? 使用LEX/YACC 編寫的計(jì)算器程序 在VC環(huán)境下使用
?? C
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):

/* Code executed at the end of each rule. */
#ifndef YY_BREAK
#define YY_BREAK break;
#endif

#define YY_RULE_SETUP \
	YY_USER_ACTION

YY_DECL
	{
	register yy_state_type yy_current_state;
	register char *yy_cp, *yy_bp;
	register int yy_act;

#line 7 "counter.l"


	if ( yy_init )
		{
		yy_init = 0;

#ifdef YY_USER_INIT
		YY_USER_INIT;
#endif

		if ( ! yy_start )
			yy_start = 1;	/* first start state */

		if ( ! yyin )
			yyin = stdin;

		if ( ! yyout )
			yyout = stdout;

		if ( ! yy_current_buffer )
			yy_current_buffer =
				yy_create_buffer( yyin, YY_BUF_SIZE );

		yy_load_buffer_state();
		}

	while ( 1 )		/* loops until end-of-file is reached */
		{
		yy_cp = yy_c_buf_p;

		/* Support of yytext. */
		*yy_cp = yy_hold_char;

		/* yy_bp points to the position in yy_ch_buf of the start of
		 * the current run.
		 */
		yy_bp = yy_cp;

		yy_current_state = yy_start;
yy_match:
		do
			{
			register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
			if ( yy_accept[yy_current_state] )
				{
				yy_last_accepting_state = yy_current_state;
				yy_last_accepting_cpos = yy_cp;
				}
			while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
				{
				yy_current_state = (int) yy_def[yy_current_state];
				if ( yy_current_state >= 19 )
					yy_c = yy_meta[(unsigned int) yy_c];
				}
			yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
			++yy_cp;
			}
		while ( yy_base[yy_current_state] != 22 );

yy_find_action:
		yy_act = yy_accept[yy_current_state];
		if ( yy_act == 0 )
			{ /* have to back up */
			yy_cp = yy_last_accepting_cpos;
			yy_current_state = yy_last_accepting_state;
			yy_act = yy_accept[yy_current_state];
			}

		YY_DO_BEFORE_ACTION;


do_action:	/* This label is used only to access EOF actions. */


		switch ( yy_act )
	{ /* beginning of action switch */
			case 0: /* must back up */
			/* undo the effects of YY_DO_BEFORE_ACTION */
			*yy_cp = yy_hold_char;
			yy_cp = yy_last_accepting_cpos;
			yy_current_state = yy_last_accepting_state;
			goto yy_find_action;

case 1:
YY_RULE_SETUP
#line 8 "counter.l"
{
		yylval.dval = atof(yytext);
		return NUMBER;
	}
	YY_BREAK
case 2:
YY_RULE_SETUP
#line 12 "counter.l"
;	/*skip*/
	YY_BREAK
case 3:
YY_RULE_SETUP
#line 13 "counter.l"
{
		struct symtab *sp = symlook(yytext);
		yylval.symp = sp;
		return NAME;
	}
	YY_BREAK
case 4:
YY_RULE_SETUP
#line 18 "counter.l"
{ return 0; }
	YY_BREAK
case 5:
#line 20 "counter.l"
case 6:
YY_RULE_SETUP
#line 20 "counter.l"
return yytext[0];
	YY_BREAK
case 7:
YY_RULE_SETUP
#line 21 "counter.l"
ECHO;
	YY_BREAK
case YY_STATE_EOF(INITIAL):
	yyterminate();

	case YY_END_OF_BUFFER:
		{
		/* Amount of text matched not including the EOB char. */
		int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;

		/* Undo the effects of YY_DO_BEFORE_ACTION. */
		*yy_cp = yy_hold_char;

		if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
			{
			/* We're scanning a new file or input source.  It's
			 * possible that this happened because the user
			 * just pointed yyin at a new source and called
			 * yylex().  If so, then we have to assure
			 * consistency between yy_current_buffer and our
			 * globals.  Here is the right place to do so, because
			 * this is the first action (other than possibly a
			 * back-up) that will match for the new input source.
			 */
			yy_n_chars = yy_current_buffer->yy_n_chars;
			yy_current_buffer->yy_input_file = yyin;
			yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
			}

		/* Note that here we test for yy_c_buf_p "<=" to the position
		 * of the first EOB in the buffer, since yy_c_buf_p will
		 * already have been incremented past the NUL character
		 * (since all states make transitions on EOB to the
		 * end-of-buffer state).  Contrast this with the test
		 * in input().
		 */
		if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
			{ /* This was really a NUL. */
			yy_state_type yy_next_state;

			yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;

			yy_current_state = yy_get_previous_state();

			/* Okay, we're now positioned to make the NUL
			 * transition.  We couldn't have
			 * yy_get_previous_state() go ahead and do it
			 * for us because it doesn't know how to deal
			 * with the possibility of jamming (and we don't
			 * want to build jamming into it because then it
			 * will run more slowly).
			 */

			yy_next_state = yy_try_NUL_trans( yy_current_state );

			yy_bp = yytext_ptr + YY_MORE_ADJ;

			if ( yy_next_state )
				{
				/* Consume the NUL. */
				yy_cp = ++yy_c_buf_p;
				yy_current_state = yy_next_state;
				goto yy_match;
				}

			else
				{
				yy_cp = yy_c_buf_p;
				goto yy_find_action;
				}
			}

		else switch ( yy_get_next_buffer() )
			{
			case EOB_ACT_END_OF_FILE:
				{
				yy_did_buffer_switch_on_eof = 0;

				if ( yywrap() )
					{
					/* Note: because we've taken care in
					 * yy_get_next_buffer() to have set up
					 * yytext, we can now set up
					 * yy_c_buf_p so that if some total
					 * hoser (like flex itself) wants to
					 * call the scanner after we return the
					 * YY_NULL, it'll still work - another
					 * YY_NULL will get returned.
					 */
					yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;

					yy_act = YY_STATE_EOF(YY_START);
					goto do_action;
					}

				else
					{
					if ( ! yy_did_buffer_switch_on_eof )
						YY_NEW_FILE;
					}
				break;
				}

			case EOB_ACT_CONTINUE_SCAN:
				yy_c_buf_p =
					yytext_ptr + yy_amount_of_matched_text;

				yy_current_state = yy_get_previous_state();

				yy_cp = yy_c_buf_p;
				yy_bp = yytext_ptr + YY_MORE_ADJ;
				goto yy_match;

			case EOB_ACT_LAST_MATCH:
				yy_c_buf_p =
				&yy_current_buffer->yy_ch_buf[yy_n_chars];

				yy_current_state = yy_get_previous_state();

				yy_cp = yy_c_buf_p;
				yy_bp = yytext_ptr + YY_MORE_ADJ;
				goto yy_find_action;
			}
		break;
		}

	default:
		YY_FATAL_ERROR(
			"fatal flex scanner internal error--no action found" );
	} /* end of action switch */
		} /* end of scanning one token */
	} /* end of yylex */


/* yy_get_next_buffer - try to read in a new buffer
 *
 * Returns a code representing an action:
 *	EOB_ACT_LAST_MATCH -
 *	EOB_ACT_CONTINUE_SCAN - continue scanning from current position
 *	EOB_ACT_END_OF_FILE - end of file
 */

static int yy_get_next_buffer()
	{
	register char *dest = yy_current_buffer->yy_ch_buf;
	register char *source = yytext_ptr;
	register int number_to_move, i;
	int ret_val;

	if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
		YY_FATAL_ERROR(
		"fatal flex scanner internal error--end of buffer missed" );

	if ( yy_current_buffer->yy_fill_buffer == 0 )
		{ /* Don't try to fill the buffer, so this is an EOF. */
		if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
			{
			/* We matched a singled characater, the EOB, so
			 * treat this as a final EOF.
			 */
			return EOB_ACT_END_OF_FILE;
			}

		else
			{
			/* We matched some text prior to the EOB, first
			 * process it.
			 */
			return EOB_ACT_LAST_MATCH;
			}
		}

	/* Try to read more data. */

	/* First move last chars to start of buffer. */
	number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;

	for ( i = 0; i < number_to_move; ++i )
		*(dest++) = *(source++);

	if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
		/* don't do the read, it's not guaranteed to return an EOF,
		 * just force an EOF
		 */
		yy_n_chars = 0;

	else
		{
		int num_to_read =
			yy_current_buffer->yy_buf_size - number_to_move - 1;

		while ( num_to_read <= 0 )
			{ /* Not enough room in the buffer - grow it. */
#ifdef YY_USES_REJECT
			YY_FATAL_ERROR(
"input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
#else

			/* just a shorter name for the current buffer */
			YY_BUFFER_STATE b = yy_current_buffer;

			int yy_c_buf_p_offset =
				(int) (yy_c_buf_p - b->yy_ch_buf);

			if ( b->yy_is_our_buffer )
				{
				int new_size = b->yy_buf_size * 2;

				if ( new_size <= 0 )
					b->yy_buf_size += b->yy_buf_size / 8;
				else
					b->yy_buf_size *= 2;

				b->yy_ch_buf = (char *)
					/* Include room in for 2 EOB chars. */
					yy_flex_realloc( (void *) b->yy_ch_buf,
							 b->yy_buf_size + 2 );
				}
			else
				/* Can't grow it, we don't own it. */
				b->yy_ch_buf = 0;

			if ( ! b->yy_ch_buf )
				YY_FATAL_ERROR(
				"fatal error - scanner input buffer overflow" );

			yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];

			num_to_read = yy_current_buffer->yy_buf_size -
						number_to_move - 1;
#endif
			}

		if ( num_to_read > YY_READ_BUF_SIZE )
			num_to_read = YY_READ_BUF_SIZE;

		/* Read in more data. */
		YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
			yy_n_chars, num_to_read );
		}

	if ( yy_n_chars == 0 )
		{
		if ( number_to_move == YY_MORE_ADJ )
			{
			ret_val = EOB_ACT_END_OF_FILE;
			yyrestart( yyin );
			}

		else
			{
			ret_val = EOB_ACT_LAST_MATCH;
			yy_current_buffer->yy_buffer_status =
				YY_BUFFER_EOF_PENDING;
			}
		}

	else
		ret_val = EOB_ACT_CONTINUE_SCAN;

	yy_n_chars += number_to_move;
	yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
	yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;

	yytext_ptr = &yy_current_buffer->yy_ch_buf[0];

	return ret_val;
	}


/* yy_get_previous_state - get the state just before the EOB char was reached */

static yy_state_type yy_get_previous_state()
	{
	register yy_state_type yy_current_state;
	register char *yy_cp;

	yy_current_state = yy_start;

	for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
		{
		register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
		if ( yy_accept[yy_current_state] )
			{
			yy_last_accepting_state = yy_current_state;
			yy_last_accepting_cpos = yy_cp;
			}
		while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
			{
			yy_current_state = (int) yy_def[yy_current_state];
			if ( yy_current_state >= 19 )
				yy_c = yy_meta[(unsigned int) yy_c];
			}
		yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
		}

	return yy_current_state;
	}


/* yy_try_NUL_trans - try to make a transition on the NUL character
 *
 * synopsis
 *	next_state = yy_try_NUL_trans( current_state );
 */

#ifdef YY_USE_PROTOS
static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
#else
static yy_state_type yy_try_NUL_trans( yy_current_state )
yy_state_type yy_current_state;
#endif
	{
	register int yy_is_jam;
	register char *yy_cp = yy_c_buf_p;

	register YY_CHAR yy_c = 1;
	if ( yy_accept[yy_current_state] )
		{
		yy_last_accepting_state = yy_current_state;
		yy_last_accepting_cpos = yy_cp;
		}
	while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
		{
		yy_current_state = (int) yy_def[yy_current_state];
		if ( yy_current_state >= 19 )
			yy_c = yy_meta[(unsigned int) yy_c];
		}
	yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
	yy_is_jam = (yy_current_state == 18);

	return yy_is_jam ? 0 : yy_current_state;
	}


#ifndef YY_NO_UNPUT
#ifdef YY_USE_PROTOS
static void yyunput( int c, register char *yy_bp )
#else
static void yyunput( c, yy_bp )
int c;
register char *yy_bp;
#endif
	{
	register char *yy_cp = yy_c_buf_p;

	/* undo effects of setting up yytext */
	*yy_cp = yy_hold_char;

	if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
		{ /* need to shift things up to make room */
		/* +2 for EOB chars. */
		register int number_to_move = yy_n_chars + 2;
		register char *dest = &yy_current_buffer->yy_ch_buf[
					yy_current_buffer->yy_buf_size + 2];
		register char *source =
				&yy_current_buffer->yy_ch_buf[number_to_move];

		while ( source > yy_current_buffer->yy_ch_buf )
			*--dest = *--source;

		yy_cp += (int) (dest - source);
		yy_bp += (int) (dest - source);
		yy_n_chars = yy_current_buffer->yy_buf_size;

		if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
			YY_FATAL_ERROR( "flex scanner push-back overflow" );

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
最新国产精品久久精品| 国产乱码精品一品二品| 国产一区二区三区久久久| 91麻豆.com| 久久午夜免费电影| 亚洲国产成人porn| 成人一道本在线| 精品国产人成亚洲区| 亚洲精品福利视频网站| 国产aⅴ精品一区二区三区色成熟| 色香色香欲天天天影视综合网| 日韩视频在线你懂得| 亚洲五月六月丁香激情| 成人a免费在线看| wwwwxxxxx欧美| 日韩在线一区二区三区| 欧美丝袜丝交足nylons图片| 中文字幕一区不卡| 国产成人h网站| 亚洲精品一区二区精华| 秋霞电影一区二区| 精品久久人人做人人爰| 亚洲狠狠爱一区二区三区| 99久久综合精品| 国产精品妹子av| 粉嫩在线一区二区三区视频| 国产日韩在线不卡| 韩国v欧美v亚洲v日本v| 日韩精品一区二区在线观看| 蜜桃久久av一区| 欧美一级免费大片| 蜜臀99久久精品久久久久久软件| 欧美猛男超大videosgay| 亚洲精品大片www| 欧美自拍偷拍一区| 一区二区免费在线播放| 欧美亚州韩日在线看免费版国语版| 国产精品毛片久久久久久久| 国产成人免费视频一区| 久久久久久久久久看片| 国产夫妻精品视频| 国产精品你懂的在线| eeuss鲁一区二区三区| 亚洲日本一区二区| av在线不卡电影| 中文字幕综合网| 日本伦理一区二区| 午夜精品一区在线观看| 91精品国产乱| 欧美日韩视频在线一区二区| 一级日本不卡的影视| 欧美群妇大交群的观看方式| 蜜臀av性久久久久蜜臀av麻豆| 精品成人免费观看| 成人av电影在线观看| 紧缚捆绑精品一区二区| 日韩一区二区麻豆国产| 激情综合色综合久久综合| 国产喂奶挤奶一区二区三区| 99久久久久免费精品国产| 亚洲午夜激情av| 一区二区三区国产豹纹内裤在线| 青草av.久久免费一区| 国产一区二区在线电影| 99vv1com这只有精品| aaa国产一区| 丁香五精品蜜臀久久久久99网站 | 国产一区二区影院| 无码av中文一区二区三区桃花岛| 激情六月婷婷久久| av福利精品导航| 欧美日韩二区三区| 国产精品护士白丝一区av| 一区二区三区中文字幕精品精品 | 麻豆极品一区二区三区| 久久91精品国产91久久小草 | 91精品国产黑色紧身裤美女| 国产日韩欧美一区二区三区乱码| 一区二区三区中文字幕| 欧美三级在线看| 久久久精品蜜桃| 色又黄又爽网站www久久| 日韩电影在线一区二区| 欧美精品在线视频| 一区二区三区在线看| 日韩午夜电影av| 成人av资源站| 亚洲成人av一区二区三区| 久久国产人妖系列| 色婷婷久久久亚洲一区二区三区 | 欧美日韩一区三区四区| 韩国三级电影一区二区| 又紧又大又爽精品一区二区| 欧美艳星brazzers| 三级在线观看一区二区| 精品欧美一区二区久久| 亚洲福利视频三区| 欧美一区二区三区四区久久| 亚洲国产cao| 日韩三级.com| 成人av电影在线| 中文字幕在线一区| 91在线观看污| 五月婷婷久久丁香| 在线免费观看成人短视频| 亚洲一区二区3| 精品国产一二三| av电影在线观看完整版一区二区| 国产精品青草久久| 欧美系列亚洲系列| 国内精品伊人久久久久av一坑| 国产精品欧美一级免费| 91小视频免费观看| 国产一区二区三区在线观看精品 | 欧美老年两性高潮| 亚洲国产一区二区视频| 久久久不卡网国产精品一区| 色悠悠亚洲一区二区| 久久精品国产99| 亚洲午夜三级在线| 中文字幕亚洲在| 26uuu亚洲婷婷狠狠天堂| 精品久久国产97色综合| 久久久久久久久免费| 蜜桃视频在线观看一区| 亚洲gay无套男同| 中文字幕成人在线观看| 国产91丝袜在线18| 丝袜国产日韩另类美女| 国产日韩欧美制服另类| 欧美国产日韩在线观看| 97久久超碰精品国产| 一区二区不卡在线视频 午夜欧美不卡在| 欧美在线三级电影| 7777女厕盗摄久久久| 国产精品乱码一区二区三区软件| 国产精品人妖ts系列视频| 亚洲欧美日韩系列| 性做久久久久久久免费看| 美腿丝袜亚洲综合| 丰满少妇在线播放bd日韩电影| 91麻豆视频网站| 欧美午夜宅男影院| 欧美一二三四区在线| 国产三级欧美三级日产三级99| 一区二区中文字幕在线| 亚洲一二三区视频在线观看| 青青草伊人久久| 成人一级片网址| 欧美欧美欧美欧美首页| 久久久精品免费观看| 亚洲第一精品在线| 国产中文字幕精品| 91九色最新地址| 久久天堂av综合合色蜜桃网| 1区2区3区国产精品| 日韩精品一级二级| 顶级嫩模精品视频在线看| 精品视频一区二区三区免费| 国产亚洲精品超碰| 亚洲成人免费看| 国产69精品久久久久毛片| 欧美日韩中文字幕一区| 国产三级欧美三级| 亚洲图片自拍偷拍| 成人av影视在线观看| 欧美一区二区私人影院日本| 国产精品视频一二| 美国毛片一区二区三区| 91国偷自产一区二区使用方法| 精品国产三级电影在线观看| 亚洲在线一区二区三区| 国产福利91精品一区二区三区| 精品视频免费在线| 18成人在线视频| 国内不卡的二区三区中文字幕| 在线日韩国产精品| 国产精品久久久久久久裸模| 玖玖九九国产精品| 欧美久久婷婷综合色| 亚洲欧美日韩系列| www.欧美.com| 久久久精品人体av艺术| 精品一区二区在线观看| 欧美日韩精品欧美日韩精品一| ...xxx性欧美| 成人久久18免费网站麻豆| 亚洲精品在线免费播放| 免费亚洲电影在线| 欧美精品一二三四| 亚洲精品国产第一综合99久久| 成人国产亚洲欧美成人综合网| 久久久久久97三级| 国内成人自拍视频| 精品国产乱码久久久久久夜甘婷婷| 调教+趴+乳夹+国产+精品| 欧美性极品少妇| 亚洲精品v日韩精品| 99久久国产免费看| 国产精品乱子久久久久|