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

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

?? eicmod.c

?? 微軟的基于HMM的人臉識(shí)別原代碼, 非常經(jīng)典的說(shuō)
?? C
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):

    } else {
    	fprintf(fp," va_alist )  va_dcl\n{\n");
	fprintf(fp,"    void Auto_EiC_CallBack(code_t *callback, va_list ap);\n");
	fprintf(fp,"    va_list ap; va_start(ap);\n");
	fprintf(fp,"    Auto_EiC_CallBack(%s%d,ap);\n",callName,callNo[p]);
    } 
	
    fprintf(fp,"\n    EiC_callBack(%s%d);\n",callName,callNo[p]);

    if(EiC_gettype(nextType(t)) != t_void) {
	fputs("    return EiC_ReturnValue( ",fp);
	/*EiC_showdectype(nextType(t),0,fp);*/
	EiC__generateType(nextType(t),"",fp,1);
	fputs(");\n",fp);
    }
    if(var)
	fputs("    va_end(ap);\n",fp);
    
    fputs("}\n\n",fp);

}



static void genArg(type_expr * t, int idx, FILE *fp)
{
    int ob;
   if ((ob = EiC_gettype(t)) == t_void) {
      return;
   }

   if(ob == t_pointer) {
       int k = EiC_gettype((nextType(t)));
       if(EiC_IsFunc(k)) {
	   k = 0;
	   while(k<Ncalls && callpos[k] != idx) k++;
	   fprintf(fp,"%s%d",middleName,callNo[k]+adjustNum);
	   return ;
       }
   }
       
    fputs("arg(",fp);
    fprintf(fp,"%d",idx);
    fputs(",getargs(),",fp);

	switch (ob) {
	  case t_char:  fputs("char)", fp); break;
	  case t_uchar: fputs("char)", fp); break;
	  case t_short: fputs("short)", fp); break;
	  case t_ushort:fputs("short)", fp); break;
	  case t_int:   fputs("int)", fp); break;
	  case t_uint:  fputs("unsigned)", fp); break;
	  case t_long:  fputs("long) ", fp); break;
	  case t_ulong: fputs("unsigned long)", fp); break;
	  case t_float: fputs("float)", fp); break;
	  case t_double:fputs("double)", fp); break;
	  case t_pointer:
	      fputs("ptr_t).p",fp);
	      break; 
	  default: fputs("Uknown identifier", fp); return;
	}
}

static void genAffect(type_expr * t, int expand, FILE *fp)
{
 
	fputs("\t", fp);
	switch (EiC_gettype(t)) {
	  case t_char: 
	  case t_short:
	  case t_int:   fputs("v.ival = ", fp); break;
	  case t_uchar:
	  case t_ushort:
	  case t_uint:  fputs("v.uival = ", fp); break;
	  case t_long:  fputs("v.lval = ", fp); break;
	  case t_ulong: fputs("v.ulval = ", fp); break;
	  case t_float: 
	  case t_double:fputs("v.dval = ", fp); break;

	  case t_pointer: 
	    if(isunsafe(t)) 
	      fputs("v.p.ep = (void*)ULONG_MAX;\n"
		    "\tv.p.sp = v.p.p = ",fp);
	    else if(issafe(t)) 
	      fputs("v.p.ep = v.p.sp = v.p.p = ", fp);
	    break;
	  case t_void:  break;
	  case t_hidden: break;
	    
/*	  case t_array:
	    fprintf(fp,"ARY[%d]",(int) EiC_getInf(t));
	    break;
	  case t_union:
	  case t_struct:
	    S = EiC_getInf(t);
	    if(!S) {
		fputs("Incomplete", fp);
		break;
	    }
	    if (EiC_gettype(t) == t_struct)
		fprintf(fp,"struct: size  %u bytes",S->tsize);
	    else
		fprintf(fp,"union: size  %u bytes",S->tsize);
	    if (expand) {
		level++;
		fputc('\n', fp);
		if (level <= 2) {
		    int j;
		    for (i = 0; i < S->n; i++) {
			for (j = 0; j < level; j++)
			    fputc('\t', fp);
			fputs(S->id[i], fp);
			fputs(" -> ", fp);
			EiC_showdectype(S->type[i], expand,fp);
			fputc('\n', fp);
		    }
		}
		level--;
	    }
	    break;
	  case t_ref: fputs("Reference ",fp);break;
	  case ID: fputs("Identifier ", fp); break;
*/
	  default: fputs("Uknown identifier", fp); return;
	}
}

static void genCall(type_expr *t, char *fname, FILE *fp)
{
    static int level = 0;
    func_t *F;
    int i;

    F = (func_t *) EiC_getInf(t);
    level++;

    fputs("\n", fp);

    if(Ncalls) {
	int k;
	for(k=0;k<Ncalls;++k) 
	    fprintf(fp,"\t%s%d = arg(%d,getargs(),ptr_t).p;\n",
		    callName,callNo[k],callpos[k]);
    }

    if(nextType(t)) {
	t = nextType(t);
	genAffect(t,0,fp);
	if(t)
	    while(nextType(t))
		t = nextType(t);
    }
    
    fputs(fname,fp);
    fputs("(", fp);
    if (F && getFNp(F)) {
	for (i = 0; i < getFNp(F); i++) {
	    genArg(getFPty(F,i), i, fp);
	    if(i < getFNp(F)-1) {
		fputs(",\n", fp);
		fputs("\t\t", fp);
	    }
	}
	fputs(");\n", fp);
    }
    else
	fputs(");\n", fp);

    level--;
}

static void genMultiCall(type_expr *t, char *fname, FILE *fp)
{
    static int level = 0;
    func_t *F;
    int i,n;
    type_expr *T;

    F = (func_t *) EiC_getInf(t);
    level++;

    fputs("\tstatic int nb = 0;\n\n",fp);

    fprintf(fp,"\tswitch(nb)\n");
    fprintf(fp,"\t{\n");
    for (n = 0;n < MULTIPLEX;++n)
    {
	adjustNum = n+1-MULTIPLEX;
	fprintf(fp,"\tcase %d :\n",n);

	if(Ncalls) {
	    int k;
	    for(k=0;k<Ncalls;++k) 
		fprintf(fp,"\t%s%d = arg(%d,getargs(),ptr_t).p;\n",
			callName,callNo[k]+adjustNum,callpos[k]);
	}

	if (n == 0)
	{
	    T = t;
	}
	else
	{
	    t = T;
	}

	if(nextType(t)) {
	    t = nextType(t);
	    genAffect(t,0,fp);
	    if(t)
		while(nextType(t))
		    t = nextType(t);
	}

	fputs(fname,fp);
	fputs("(", fp);
	if (F && getFNp(F)) {
	    for (i = 0; i < getFNp(F); i++) {
		genArg(getFPty(F,i), i, fp);
		if(i < getFNp(F)-1) {
		    fputs(",\n", fp);
		    fputs("\t\t", fp);
		}
	    }
	    fputs(");\n", fp);
	}
	else
	    fputs(");\n", fp);

	level--;
	fprintf(fp,"\tbreak;\n");
    }
    fprintf(fp,"\t}\n");
    fprintf(fp,"\t++nb;\n");
    fprintf(fp,"\tnb %%= %d;\n",MULTIPLEX);
    adjustNum = 0;
}


static void genFunctions(int tab, int expand, 
		  token_t * e1, 
		  char *mname, 
		  int allowed(), FILE *fp)
{
    int i, n, t;
    int multiplexed;
    symentry_t *sym;
    
    for (i = 0; i < HSIZE; i++)
	for (sym = EiC_HTAB[i]; sym; sym = sym->next) {
	    if ((t = EiC_gettype(sym->type)) == t_eic || sym->nspace != tab)
		continue;

	    if(e1 && e1->Type && ! EiC_sametypes(e1->Type,sym->type))
		continue;

	    if(mname && strcmp(mname,sym->fname) != 0)
		continue;
	    
	    if(allowed && !allowed(t))
		continue;

	    n = 1;
	    multiplexed = 0;
	    while (n)
	    {
		if(DoCallBackNames(EiC_getInf(sym->type),fp)) {
		    int k = 0;
		    if (!multiplexed)
		    {
			multiplexed = 1;
			n = MULTIPLEX;
		    }
		    while(k<Ncalls) {
			genCallBackFunc(sym->type,k++,fp);
		    }
		}
		--n;
	    }

	    fputs("static val_t eic_",fp);
	    fputs(sym->id, fp);
	    fputs("(void)\n",fp);
	    fputs("{\n",fp);
	    
	    fputs("\tval_t v;\n",fp);
	    /*fputs("\tstatic int nb = 0;\n",fp);*/

	    if (multiplexed)
	    {
		genMultiCall(sym->type, sym->id, fp);
	    }
	    else
	    {
		genCall(sym->type, sym->id, fp);
	    }
	    
	    fputs("\n",fp);
	    fputs("\treturn v;\n",fp);
	    fputs("}\n\n",fp);

	}
}






static void genInterface(int tab, 
		  int expand, 
		  token_t * e1, 
		  char *mname, 
		  FILE *fp)
{
    char *pt;
    int i, t;
    symentry_t *sym;
    char iname[255]; 
  
    strcpy(iname,mname);
    pt = strrchr(iname,'.');
    if (pt)
    {
    	*pt = '\0';
    }
    pt = strrchr(iname,'/');
    if (pt)
    {
    	++pt;
    }
    else
    {
    	pt = iname;
    }

    fputs("/**********************************/\n\n",fp);

    fprintf(fp,"void module_%s()\n",pt);
    fputs("{\n",fp);


    for (i = 0; i < HSIZE; i++)
	for (sym = EiC_HTAB[i]; sym; sym = sym->next) {

	    if ((t = EiC_gettype(sym->type)) == t_eic || sym->nspace != tab)
		continue;

	    if(e1 && e1->Type && ! EiC_sametypes(e1->Type,sym->type))
		continue;

	    if(mname && strcmp(mname,sym->fname) != 0)
		continue;
	    
	    if(EiC_IsFunc(t) || sym->sclass == c_typedef || sym->sclass == c_enum)
		continue;

            fprintf(fp,"\tEiC_parseString(\"");
	    EiC__generateType(sym->type,sym->id,fp,1);
	    fprintf(fp," @ %%ld;\", (long)&%s);\n",sym->id);
	}



    for (i = 0; i < HSIZE; i++)
	for (sym = EiC_HTAB[i]; sym; sym = sym->next) {

	    if ((t = EiC_gettype(sym->type)) == t_eic || sym->nspace != tab)
		continue;

	    if(e1 && e1->Type && ! EiC_sametypes(e1->Type,sym->type))
		continue;

	    if(mname && strcmp(mname,sym->fname) != 0)
		continue;
	    
	    if(!EiC_IsFunc(t))
		continue;

            fprintf(fp,"\tEiC_add_builtinfunc(\"%s\",eic_%s);\n",sym->id,sym->id);
	}

    fputs("}\n\n",fp);
    fputs("/**********************************/\n\n",fp);
}

static void genHeader(char *mname, FILE *fp)
{
    fputs("#include <stdlib.h>\n"
	  "#include <varargs.h>\n"
	  "#include <limits.h>\n"
	  "#include \"eic.h\"\n",fp);
    fprintf(fp,"#include \"%s\"\n",mname);
    fputs("\n\n",fp);
}

static void genModule(int tab, int expand, token_t * e1, char *mname)
{
  FILE *fp = stdout;

  if(EiC_lexan() == INT)
      MULTIPLEX = token->Val.ival;
  else
      retractlexan();

  if(EiC_lexan() == STR) {
    fp = fopen(token->Val.p.p,"w");
    EiC_formatMessage("redirecting to [%s]\n",(char*)token->Val.p.p);
    if(!fp) {
      EiC_warningerror("Failed to open file %s\n", token->Val.p.p);
      fp = stdout;
    }
  } else
    retractlexan();

  genHeader(mname,fp);
  genFunctions(tab, expand, e1, mname, EiC_IsFunc,fp);
  genInterface(tab, expand, e1, mname,fp);


  if(fp != stdout)
    fclose(fp);
}

/*
 *
 *	NEW EiC COMMAND !
 *	By Jean-Bruno Richard
 *
 */
static int genCommand(void)
{
    char EiC_nextchar(void);
    int EiC_IsIncluded(char *fname);
    char *buf;
    
    callBack=0;
    buf = getNextInput();
    if(buf[0]) {
	if(!EiC_IsIncluded(buf))
	     EiC_warningerror("Failed to find %s",buf); 
	else {
	    genModule(stand_tab,0,NULL,buf);
	}
    } else 
	     EiC_warningerror("Need a included file name for generating module"); 
    return 1;
}
#endif



static void establish_ARs(void)
{
    EiC_ENV->LARsize = 4000;
    EiC_ENV->ARsize =  3000;
    EiC_ENV->LAR =(AR_t*)xmalloc(sizeof(AR_t)*EiC_ENV->LARsize);
    EiC_ENV->AR = (AR_t*)xmalloc(sizeof(AR_t)*EiC_ENV->ARsize);
}

void EiC_init_EiC(void)
{
    EiC_ENV = (environ_t *) xcalloc(1, sizeof(environ_t));
    EiC_ENV->CODE.Filename = "::EiC::";

    establish_ARs();
    EiC_initpp();
    EiC_work_tab = stand_tab;
    /*init_hashtab(31);*/
    /* add EiC command line functions */
    add_eicfunc("listcode", toggle_listcode);
    add_eicfunc("interpreter", toggle_interp);
    add_eicfunc("variables", showhashtab);
    add_eicfunc("exit", EiC_exit_EiC);
    add_eicfunc("quit", EiC_exit_EiC);
    add_eicfunc("timer", toggle_timer);
    add_eicfunc("showline", toggle_showline);
    add_eicfunc("show", show);
    add_eicfunc("memdump", toggle_memdump);
    add_eicfunc("memtrace", toggle_memtrace);
    add_eicfunc("rm", rm);
    add_eicfunc("trace",toggle_trace);
    add_eicfunc("verbose",toggle_verbose);
    add_eicfunc("interface",toggle_interface);

#ifndef NO_HISTORY
    add_eicfunc("history",showhistory);
#endif
    add_eicfunc("help", showHelp);
    add_eicfunc("status",EiCstatus);
    add_eicfunc("includes",toggle_includes);
    add_eicfunc("files",filesCommand);
    add_eicfunc("clear",clearCommand);
#ifndef NO_AUTOGEN
    add_eicfunc("gen",genCommand);
    add_eicfunc("reset",ResetEiC);
    /* Remenber to modify help message too... */
#endif
}










?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美写真视频网站| 国产精品一区二区三区四区| 国产亚洲精品7777| 欧美乱熟臀69xxxxxx| 欧洲精品一区二区| 色婷婷综合久久久久中文一区二区| 国产精品伊人色| 国产成人午夜精品影院观看视频| 极品瑜伽女神91| 美洲天堂一区二卡三卡四卡视频| 视频一区免费在线观看| 亚洲成人精品影院| 日本三级韩国三级欧美三级| 日韩av在线发布| 精品一区二区在线播放| 国产一区二区三区电影在线观看| 国产一区二区美女诱惑| 成人天堂资源www在线| 成人激情免费视频| 色婷婷精品大在线视频| 欧美视频精品在线观看| 欧美伦理影视网| 精品成人佐山爱一区二区| 久久久久国产免费免费| 亚洲欧洲另类国产综合| 亚洲乱码精品一二三四区日韩在线 | 一级做a爱片久久| 天天综合网天天综合色| 国产又粗又猛又爽又黄91精品| 高清不卡在线观看| 色哟哟国产精品| 欧美一级片在线观看| 国产婷婷一区二区| 一区二区三区成人| 精品一区二区三区视频| 91丨九色丨尤物| 日韩三级在线免费观看| 中文字幕精品一区二区精品绿巨人| 一区二区久久久| 国产最新精品精品你懂的| 91久久国产综合久久| 精品美女一区二区三区| 亚洲黄色在线视频| 极品尤物av久久免费看| 欧美色大人视频| 欧美国产一区在线| 蜜臀av在线播放一区二区三区| 国产iv一区二区三区| 毛片av一区二区| www国产精品av| 亚洲一区二区三区四区中文字幕 | 午夜婷婷国产麻豆精品| 国内一区二区在线| 欧美日韩视频一区二区| 国产精品理论片在线观看| 欧美aaaaaa午夜精品| 欧美性猛交xxxxxx富婆| 中文幕一区二区三区久久蜜桃| 日本中文字幕一区| 在线观看日韩毛片| 国产精品久久福利| 国产精品影视网| 日韩午夜激情av| 视频在线观看91| 欧美最新大片在线看| 国产精品美女久久福利网站| 精品一区二区av| 337p亚洲精品色噜噜狠狠| 亚洲国产日韩a在线播放性色| av午夜一区麻豆| 欧美国产97人人爽人人喊| 韩国女主播一区| 欧美成人精品福利| 日韩国产欧美在线观看| 欧美日韩精品是欧美日韩精品| 亚洲欧美视频一区| 91日韩在线专区| 亚洲精选一二三| 一本在线高清不卡dvd| 中文字幕佐山爱一区二区免费| 国产成人在线影院| 欧美高清在线一区| www.欧美精品一二区| 最新高清无码专区| 色偷偷成人一区二区三区91| 日韩不卡免费视频| 欧美无乱码久久久免费午夜一区 | 91成人免费电影| 亚洲另类春色校园小说| 欧美最猛黑人xxxxx猛交| 一区二区三区四区在线免费观看| 色狠狠综合天天综合综合| 一区二区三区免费在线观看| 欧美日韩精品一区视频| 日韩精品亚洲专区| 26uuu精品一区二区三区四区在线| 精品一区二区三区影院在线午夜 | 欧美精品一区二区久久久| 九一九一国产精品| 国产精品美女久久久久久2018| 91蜜桃在线免费视频| 亚洲国产一区二区a毛片| 制服.丝袜.亚洲.中文.综合| 韩国毛片一区二区三区| 亚洲色图欧美在线| 欧美日韩免费高清一区色橹橹| 秋霞电影网一区二区| 久久精品亚洲乱码伦伦中文| aaa欧美色吧激情视频| 亚洲高清视频的网址| 精品99一区二区| 一本色道久久综合亚洲91 | 国产嫩草影院久久久久| 色香色香欲天天天影视综合网| 天天爽夜夜爽夜夜爽精品视频| 久久无码av三级| 在线免费视频一区二区| 国产美女在线精品| 亚洲一区二区高清| 国产欧美一区二区三区鸳鸯浴| 色吧成人激情小说| 精品一区二区三区免费观看| 国产精品电影一区二区| 欧美一个色资源| 91免费视频观看| 国产在线精品视频| 亚洲国产一区二区三区| 中文字幕亚洲一区二区va在线| 日韩欧美黄色影院| 在线看一区二区| youjizz久久| 国模一区二区三区白浆| 亚洲va国产天堂va久久en| 欧美激情一区在线| 精品国产一区二区三区av性色| 在线亚洲一区二区| 成人精品国产免费网站| 久久99久久精品| 天天亚洲美女在线视频| 亚洲精品视频在线看| 中文字幕成人av| 国产日韩欧美一区二区三区乱码| 欧美日韩黄色一区二区| 色94色欧美sute亚洲线路二| 成人午夜av电影| 极品销魂美女一区二区三区| 天堂资源在线中文精品| 亚洲国产日韩a在线播放性色| 亚洲婷婷综合色高清在线| 国产精品女主播av| 国产精品网站在线| 国产欧美日韩另类一区| 国产亚洲一本大道中文在线| 亚洲精品一区二区三区影院 | 91小视频免费观看| 93久久精品日日躁夜夜躁欧美| 国产91综合网| 成人免费av资源| 成人免费毛片嘿嘿连载视频| 丰满白嫩尤物一区二区| 成人午夜激情影院| 色婷婷综合久久| 欧美视频日韩视频在线观看| 欧美私人免费视频| 91精品国产91久久久久久最新毛片| 欧美亚洲综合色| 91精品国产91久久久久久一区二区| 欧美一区二区性放荡片| 精品国产乱码久久久久久久久| 久久亚洲捆绑美女| 国产精品女上位| 亚洲成人资源网| 日本中文字幕不卡| 韩国成人在线视频| 不卡av在线免费观看| 97aⅴ精品视频一二三区| 欧美亚洲自拍偷拍| 日韩欧美高清dvd碟片| 国产亚洲精品资源在线26u| 成人欧美一区二区三区1314| 亚洲另类春色国产| 秋霞午夜av一区二区三区| 国产suv一区二区三区88区| 97久久精品人人做人人爽| 欧美日韩五月天| 久久久国产午夜精品| 亚洲人成7777| 久久爱www久久做| 懂色中文一区二区在线播放| 欧美专区在线观看一区| www亚洲一区| 亚洲精品国产第一综合99久久| 视频一区国产视频| 成人av电影免费在线播放| 欧美蜜桃一区二区三区| 日本一区二区综合亚洲| 日本亚洲视频在线| aaa亚洲精品| 久久无码av三级| 亚洲成a人片综合在线|