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

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

?? getsym.c

?? C編譯器源碼是我到處找來(lái)的,看了之后很有收獲
?? C
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
                rval = ival;
        if(**ptr == '-') {
                exmul = 0.1;
                (*ptr)++;
                }
        else {
                exmul = 10.0;
								if (**ptr == '+')
									(*ptr)++;
				}
        getbase(10,ptr);
        if(ival > 255)
                generror(ERR_FPCON,0,0);
        else
                while(ival--)
                        expo *= exmul;
        rval *= expo;
				lastst = rconst;
}
 
/*
 *      getnum - get a number from input.
 *
 *      getnum handles all of the numeric input. it accepts
 *      decimal, octal, hexidecimal, and floating point numbers.
 */
void getnum(void)
{
	int isfloat=FALSE;
	char buf[50],*ptr = buf;
	while (isxdigit(lastch) || lastch == 'x' || lastch == 'X') {
		*ptr++ = lastch;
		getch();
	}
	if (lastch == '.') {
		isfloat = TRUE;
		*ptr++=lastch;
		getch();
		while (isdigit(lastch)) {
			*ptr++ = lastch;
			getch();
		}
	}
	if (lastch == 'e' || lastch == 'E') {
		isfloat = TRUE;
		*ptr++ = lastch;
		getch();
		if (lastch == '+' || lastch == '-') {
			*ptr++=lastch;
			getch();
		}
		while (isdigit(lastch)) {
			*ptr++ = lastch;
			getch();
		}
	}
	if (lastch == 'F') {
		isfloat = TRUE;
	}
	*ptr = 0;
	ptr = buf;
	if (!isfloat) {
		if (*ptr == '0') {
			ptr++;
      if(*ptr == 'x' || *ptr == 'X') {
      	ptr++;
      	getbase(16,&ptr);
    	}
    	else getbase(8,&ptr);
   	}
		else
			getbase(10,&ptr);
		if (lastch == 'U') {
			lastst = iuconst;
			getch();
			if (lastch == 'L') {
				lastst = luconst;
				getch();
			}
		}
		else if (lastch == 'L') {
			lastst = iconst;
			getch();
			if (lastch == 'U') {
				lastst = luconst;
				getch();
			}
		}
	}
  else    {
                getbase(10,&ptr);
	                if(*ptr == '.') {
											ptr++;
                        rval = ival;    /* float the integer part */
                        getfrac(&ptr);      /* add the fractional part */
                        lastst = rconst;
  		                  }
      	          if(*ptr == 'e' || *ptr == 'E') {
                        ptr++;
                        getexp(&ptr);       /* get the exponent */
                        }
									if (lastch == 'F') {
											if (lastst != rconst) {
												rval = ival;
											}
											lastst = fconst;
											getch();
									}
									else if (lastch == 'L') {
											if (lastst != rconst) {
												rval = ival;
											}
											lastst = lrconst;
											getch();
									}
								}
}
 
int getsym2(void) 
/*
 * translate character sequences to appropriate token names
 */
{       register int    i, j;
				int size;
swlp:
						 switch(lastch) {
                case '+':
                        getch();
                        if(lastch == '+') {
                                getch();
                                lastst = autoinc;
                                }
                        else if(lastch == '=') {
                                getch();
                                lastst = asplus;
                                }
                        else lastst = plus;
                        break;
                case '-':
                        getch();
                        if(lastch == '-') {
                                getch();
                                lastst = autodec;
                                }
                        else if(lastch == '=') {
                                getch();
                                lastst = asminus;
                                }
                        else if(lastch == '>') {
                                getch();
#ifdef CPLUSPLUS
																if (prm_cplusplus && lastch == '*') {
																	getch();
																	lastst = pointstar;
																}
																else
#endif
                                	lastst = pointsto;
                                }
                        else lastst = minus;
                        break;
                case '*':
                        getch();
                        if(lastch == '=') {
                                getch();
                                lastst = astimes;
                                }
                        else lastst = star;
                        break;
                case '/':
                        getch();
                        if(lastch == '=') {
                                getch();
                                lastst = asdivide;
                                }
                        else lastst = divide;
                        break;
                case '^':
                        getch();
                        if(lastch == '=') {
                                getch();
                                lastst = asxor;
                                }
                        else lastst = uparrow;
                        break;
                case ';':
                        getch();
                        lastst = semicolon;
                        break;
                case ':':
                        getch();
#ifdef CPLUSPLUS
												if (prm_cplusplus && lastch == ':') {
													lastst = classsel;
													getch();
												}
												else
#endif
                        	lastst = colon;
                        break;
                case '=':
                        getch();
                        if(lastch == '=') {
                                getch();
                                lastst = eq;
                                }
                        else lastst = assign;
                        break;
                case '>':
                        getch();
                        if(lastch == '=') {
                                getch();
                                lastst = geq;
                                }
                        else if(lastch == '>') {
                                getch();
                                if(lastch == '=') {
                                        getch();
                                        lastst = asrshift;
                                        }
                                else lastst = rshift;
                                }
                        else lastst = gt;
                        break;
                case '<':
                        getch();
												if (incconst) {
                      	  for(i = 0;i < MAX_STRLEN;++i) {
                                if(lastch == '>')
                                        break;
                                if((j = getsch()) == -1)
                                        break;
                                else
                                        laststr[i] = j;
	                              }
  	                      laststr[i] = 0;
    	                    lastst = sconst;
      	                  if(lastch != '>')
        	                        generror(ERR_NEEDCHAR,'>',0);
          	              else
            	                    getch();
												} else
                        	if(lastch == '=') {
                                getch();
                                lastst = leq;
                                }
                        	else if(lastch == '<') {
                                getch();
                                if(lastch == '=') {
                                        getch();
                                        lastst = aslshift;
                                        }
                                else lastst = lshift;
                                }
                        	else lastst = lt;
                        break;
                case '\'':
                        getch();
                        ival = getsch();        /* get a string char */
                        if(lastch != '\'')
                                generror(ERR_NEEDCHAR,'\'',0);
                        else
                                getch();
                        lastst = cconst;
                        break;
								case 0x2d4:
												getch();
												i=0;
												while (lastch != '\"' && lastch)
													i=installphichar(lastch,laststr,i);
												if ((lastch & 0x7f) != '\"')
        	                        generror(ERR_NEEDCHAR,'\"',0);
          	              else
            	                    getch();
												size = strlen(laststr);
												lastst = sconst;
												break;
                case '\"':
					 							size = 0;
												while (lastch == '\"') {
                        	getch();
                        	for(i = size;i < MAX_STRLEN;++i) {
                                if(lastch == '\"')
                                        break;
                                if((j = getsch()) == -1)
                                        break;
                                else
                                        laststr[i] = j;
                                }
	                        laststr[i] = 0;
													size = i;
    	                    lastst = sconst;
      	                  if(lastch != '\"')
        	                        generror(ERR_NEEDCHAR,'\"',0);
          	              else
            	                    getch();
												}
                        break;
                case '!':
                        getch();
                        if(lastch == '=') {
                                getch();
                                lastst = neq;
                                }
                        else lastst = not;
                        break;
                case '%':
                        getch();
                        if(lastch == '=') {
                                getch();
                                lastst = asmodop;
                                }
                        else lastst = modop;
                        break;
                case '~':
                        getch();
                        lastst = compl;
                        break;
                case '.':
												if (isdigit(*lptr))
													getnum();
												else {	
	                        getch();
#ifdef CPLUSPLUS
													if (prm_cplusplus && lastch == '*') {
														getch();
														lastst = dotstar;
													}
													else 
#endif
													  if (lastch == '.') {
													  	getch();
															if (lastch == '.') {
																getch();
																lastst = ellipse;
																break;
															}
															else {
          	        	      	  generror(ERR_ILLCHAR,lastch,0);
															}
														}
                        	lastst = dot;
												}
                        break;
                case ',':
                        getch();
                        lastst = comma;
                        break;
                case '&':
                        getch();
                        if( lastch == '&') {
                                lastst = land;
                                getch();
                                }
                        else if( lastch == '=') {
                                lastst = asand;
                                getch();
                                }
                        else
                                lastst = and;
                        break;
                case '|':
                        getch();
                        if(lastch == '|') {
                                lastst = lor;
                                getch();
                                }
                        else if( lastch == '=') {
                                lastst = asor;
                                getch();
                                }
                        else
                                lastst = or;
                        break;
                case '(':
                        getch();
                        lastst = openpa;
                        break;
                case ')':
                        getch();
                        lastst = closepa;
                        break;
                case '[':
                        getch();
                        lastst = openbr;
                        break;
                case ']':
                        getch();
                        lastst = closebr;
                        break;
                case '{':
                        getch();
                        lastst = begin;
                        break;
                case '}':
                        getch();
                        lastst = end;
                        break;
                case '?':
                        getch();
                        lastst = hook;
                        break;
                default:
												if (iscommentchar(lastch)) {
													do {
														getch();
													} while (!iscommentchar(lastch) && lastch != '\n');
												}
												else
                        	generror(ERR_ILLCHAR,lastch,0);
                        getch();
												return 1;
                }
	return 0;
}
/*
 *      getsym - get next symbol from input stream.
 *
 *      getsym is the basic lexical analyzer.  It builds
 *      basic tokens out of the characters on the input
 *      stream and sets the following global variables:
 *
 *      lastch:         A look behind buffer.
 *      lastst:         type of last symbol read.
 *      laststr:        last string constant read.
 *      lastid:         last identifier read.
 *      ival:           last integer constant read.
 *      rval:           last real constant read.
 *
 *      getsym should be called for all your input needs...
 */
void     getsym(void)
{

				if (backupchar != -1) {
					lastst = backupchar;
					backupchar = -1;
					return;
				}
				if (cantnewline && !*lptr) {
					lastst = eol;
					return;
				}
        while(iswhitespacechar(lastch)) {
          getch();
					if (cantnewline && !*lptr) {
						lastst = eol;
						return;
					}
				}
        if( lastch == -1)
                lastst = eof;
        else if(isdigit(lastch))
                getnum();
        else if(isstartchar(lastch)) {
                getid();
                searchkw();
				}
        else getsym2();
}
/*
 * when we need specific punctuation, call one of these routines
 */
int needpunc(enum e_sym p, int *skimlist)
{       if( lastst == p) {
                getsym();
								return(TRUE);
				}
        else
                expecttoken(p,skimlist);
	return(FALSE);
}
int needpuncexp(enum e_sym p, int *skimlist)
{       if( lastst == p) {
                getsym();
								return(TRUE);
				}
        else
                expecttokenexp(p,skimlist);
	return(FALSE);
}
/*
 * having to back up a character is rare, but sometimes...
 */
void backup(int st)
{
  backupchar = lastst;
  lastst = st;
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品卡一卡二| 亚洲天堂网中文字| 欧美性猛片xxxx免费看久爱| 国产精品自拍毛片| 国产乱人伦偷精品视频免下载| 六月丁香婷婷色狠狠久久| 三级亚洲高清视频| 麻豆成人av在线| 九一久久久久久| 国产精品伊人色| 风间由美性色一区二区三区| av高清久久久| 欧洲视频一区二区| 91精品国产综合久久福利| 91精品蜜臀在线一区尤物| 欧美xxxxxxxxx| 中文天堂在线一区| 有码一区二区三区| 三级久久三级久久| 国产夫妻精品视频| 色综合天天综合狠狠| 欧美日韩视频在线第一区| 日韩一区二区视频| 国产欧美日韩激情| 亚洲制服丝袜av| 久久av中文字幕片| 成a人片亚洲日本久久| 欧美色偷偷大香| 精品国产不卡一区二区三区| 国产精品免费久久| 亚洲成av人片在线观看无码| 国内外成人在线视频| 99精品久久免费看蜜臀剧情介绍| 欧美亚洲愉拍一区二区| 欧美v日韩v国产v| 亚洲色图欧洲色图婷婷| 麻豆成人久久精品二区三区红| 国产成人午夜精品影院观看视频 | 精品少妇一区二区三区视频免付费 | 91在线播放网址| 欧美一级在线免费| 自拍偷在线精品自拍偷无码专区| 日韩电影免费在线观看网站| 成人开心网精品视频| 91麻豆精品国产91久久久久久| 国产精品嫩草久久久久| 免费亚洲电影在线| 一本久道中文字幕精品亚洲嫩| 精品国产精品网麻豆系列| 亚洲自拍偷拍麻豆| 成人精品视频.| 精品国产一区久久| 午夜视黄欧洲亚洲| 日本韩国欧美一区二区三区| 亚洲国产精品成人综合色在线婷婷| 亚洲成年人影院| 91亚洲男人天堂| 国产精品超碰97尤物18| 国产999精品久久| 日韩亚洲欧美在线| 亚洲成人动漫在线免费观看| 91一区二区三区在线观看| 国产精品三级av| 激情都市一区二区| 日韩欧美国产三级电影视频| 亚洲成人av一区| 欧美日韩国产美| 亚洲成av人片www| 在线影院国内精品| 一区二区三区在线视频免费 | 日韩三级视频在线看| 亚洲国产裸拍裸体视频在线观看乱了| 国产一区二三区好的| 91精品国产全国免费观看| 无吗不卡中文字幕| 91精品婷婷国产综合久久性色| 亚洲国产精品麻豆| 91精品一区二区三区在线观看| 午夜精品福利一区二区三区蜜桃| 欧美性感一类影片在线播放| 亚洲国产综合色| 91精品国产色综合久久不卡电影| 三级在线观看一区二区| 日韩午夜精品电影| 国产精品88av| 综合久久给合久久狠狠狠97色| 91老司机福利 在线| 亚洲高清免费视频| 欧美白人最猛性xxxxx69交| 国产在线一区二区| 亚洲国产精品成人综合色在线婷婷| av电影一区二区| 午夜激情久久久| 欧美成人一级视频| av中文字幕亚洲| 亚洲bt欧美bt精品| 精品电影一区二区| 不卡一卡二卡三乱码免费网站| 一区二区三区波多野结衣在线观看 | 26uuu精品一区二区三区四区在线| 国内精品免费在线观看| 国产精品激情偷乱一区二区∴| 一本色道久久综合亚洲91 | 中文字幕国产一区二区| 99精品久久久久久| 免费成人美女在线观看.| 国产视频视频一区| 欧美日韩免费高清一区色橹橹 | 国产69精品久久久久777| 中文字幕一区二区三区不卡| 欧美人狂配大交3d怪物一区| 国产精品中文字幕一区二区三区| 一区二区三区四区不卡在线| 欧美精品一区二| 在线一区二区三区四区| 精品夜夜嗨av一区二区三区| 亚洲人快播电影网| 精品99一区二区| 337p亚洲精品色噜噜噜| 91丨九色丨黑人外教| 国内精品国产成人国产三级粉色| 亚洲精品国产无套在线观| 26uuu亚洲综合色| 欧美精品aⅴ在线视频| 色欧美片视频在线观看在线视频| 精品一区二区在线看| 亚洲午夜精品网| 亚洲日本在线观看| 国产午夜精品在线观看| 91精品国产手机| 欧美日韩卡一卡二| 在线免费不卡视频| av综合在线播放| gogo大胆日本视频一区| 国内精品在线播放| 免费成人在线网站| 日本视频免费一区| 香蕉加勒比综合久久| 一区二区三区精品在线观看| 国产精品午夜春色av| 久久久久久亚洲综合影院红桃| 欧美一区二区成人6969| 欧美丰满少妇xxxxx高潮对白| 色欧美片视频在线观看在线视频| 成人免费视频视频| 成人免费精品视频| 99精品热视频| 色久优优欧美色久优优| 一本久道久久综合中文字幕| 色欲综合视频天天天| 一本到一区二区三区| 色婷婷综合久久久久中文一区二区| 成人av动漫网站| 97久久超碰精品国产| 91在线视频免费91| 91视视频在线观看入口直接观看www | 一区二区三区中文在线观看| 亚洲欧美日韩国产一区二区三区 | 国产精品国产三级国产有无不卡| 国产日韩v精品一区二区| 欧美国产精品一区二区三区| 久久精品日韩一区二区三区| 国产精品乱人伦中文| 亚洲国产成人tv| 美国欧美日韩国产在线播放 | 国产精品天天摸av网| 中文字幕在线不卡| 一区二区三区毛片| 日韩**一区毛片| 国产在线看一区| av在线不卡免费看| 欧美日韩久久不卡| 精品va天堂亚洲国产| 国产精品青草综合久久久久99| 亚洲丝袜美腿综合| 日本人妖一区二区| 成人开心网精品视频| 欧美视频精品在线观看| 欧美大度的电影原声| 国产精品乱子久久久久| 午夜免费久久看| 久久福利视频一区二区| 99久久婷婷国产综合精品 | 久久影视一区二区| 国产精品理论片| 青青草精品视频| 91丨九色丨尤物| 久久亚洲春色中文字幕久久久| 国产精品国产三级国产三级人妇 | 亚洲综合精品久久| 久久精品国产亚洲5555| 99在线精品观看| 欧美一级精品在线| 国产精品不卡一区| 麻豆传媒一区二区三区| 欧洲精品在线观看| 国产欧美日韩视频在线观看| 午夜激情久久久| 91蝌蚪porny九色| 久久久99免费|