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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? starteic.c

?? 微軟的基于HMM的人臉識別原代碼, 非常經典的說
?? C
?? 第 1 頁 / 共 2 頁
字號:
/* starteic.c
 *
 *	(C) Copyright Dec 31 1995, Edmond J. Breen.
 *		   ALL RIGHTS RESERVED.
 * This code may be copied for personal, non-profit use only.
 *
 */

/* In accordance with the practice of fair use, I hereby acknowledge
 * that:
 */
static char *PlaugerStr_=
"Portions of this work are derived from the Standard C library, (C), 1992 by P.J. Plauger, published by Prentice-Hall and are used with permission.";


/* Modified by Intel OpenCV team. The runEiC function has been changed 
   in order to catch exceptions thrown by parser and interpreter. */


#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <signal.h>
#include <setjmp.h>
#include <stdarg.h>

#include "MachSet.h"
#include "global.h"
#include "lexer.h"
#include "typemod.h"
#include "func.h"
#include "xalloc.h"
#include "preproc.h"
#include "emitter.h"
#include "parser.h"
#include "symbol.h"
#include "error.h"
#include "reset.h"

#if __GLIBC__ >=  2
#define signal sysv_signal
void (*sysv_signal(int sig, void (*func)(int a))) (int a);
#endif


extern void EiC_interpret(environ_t * env);
extern	char *EiC_prolineString(char *str);


#define HERE printf("%s %d\n",__FILE__,__LINE__)

char *Version =
"*************************************************************************\n"
"EiC V4.3.1 - Copyright (c) 1995 to 2000,"
" by Edmond J. Breen\n"
"EiC comes `as is' and with ABSOLUTELY NO WARRANTY OF MERCHANTIBILITY AND\n"
" FITNESS OF PURPOSE\n"
"*************************************************************************\n"
;
    

environ_t *EiC_ENV;

size_t EiC_ENV_NextEntryNum()
{
    return EiC_stab_NextEntryNum(&EiC_ENV->stab);
}

void EiC_ENV_CleanUp(size_t bot)
{
    EiC_stab_CleanUp(&EiC_ENV->stab,bot);
}

/*END STRING TABLE ROUTINES*/


void EiC_reset_env_pointers(token_t * e1, int bp)
{
    EiC_ENV->lsp = bp;
}


void EiC_markENV(char mark)
{
    EiC_stab_Mark(&EiC_ENV->stab,mark);
}	

void free_env_code(void)
{
    unsigned int i;
    InsT_t *inst;

    code_t *c = &EiC_ENV->CODE;

    while(c->prev) /* find start point */
	c = (code_t*)c->prev;
	
     inst = c->inst;
     /* rem free up other info also */
    for (i = 0; i < c->nextinst; i++, inst++)
	if (inst->opcode == jmptab) {
	    eicstack_t *s;
	    s = inst->val.p.p;
	    xfree(s->val);
	    xfree(s);
	} else if (inst->opcode == assigntype) {
	    EiC_freetype(inst->val.p.p);

	} else if(inst->opcode == halt) {
		EiC_freetype(inst->val.p.p);
	}

    EiC_freecode(c);
    EiC_ENV->CODE = *c;
}

void EiC_SaveGlobalString(ptr_t *s)
{
    int len = (char*)s->ep - (char*)s->sp;
    s->sp = s->p = EiC_stab_SaveString(&EiC_ENV->stab,s->p);
    s->ep = (char*)s->p + len;
}

/* signal handling  routines 
 *
 * If a new signal hangling rountines gets added
 * make sure it gets also added in module/stdClib/src/signal.c
 *
 */

jmp_buf env;
static int jmpOn = 0;
#define Err_   1
#define Exit_  2

char * EiC_CurrentFile =NULL;
unsigned int  EiC_CurrentLine = -1;

#define errStr(x)   if(EiC_CurrentFile) EiC_error("\n" x ", file %s, line %d\n",EiC_CurrentFile,EiC_CurrentLine)
#define eic_disaster() EiC_error("exit EiC\n");exit(1)



size_t fopen_NextEntryNum(void);
void _ffexit(size_t);

void EiC_exit_call(int i)
{
#ifndef _SEIC_
    size_t fopen_entry = fopen_NextEntryNum(); 
#if defined(WIN32) || defined(_DJGPP)
    signal(SIGTERM, EiC_exit_call);
#else
    signal(SIGUSR1, EiC_exit_call);
#endif
    _ffexit(fopen_entry);
    if(jmpOn && jmpOn++ <= 1)
      longjmp(env,Exit_);
    else
	eic_disaster();
#else
    eic_disaster();
#endif
}

void  EiC_bus_err(int i)
{

#if defined(WIN32) || defined(_DJGPP)
    signal(SIGABRT,EiC_bus_err);
#else
    signal(SIGBUS, EiC_bus_err);
#endif
    errStr("EiC bus error trapped");
    if(jmpOn && jmpOn++ <= 1)
      longjmp(env,Err_);
    else
      eic_disaster();
}
void  EiC_ill_oper(int i)
{
    signal(SIGILL, EiC_ill_oper);
    errStr("EiC illegal operation attempted\n");
    if(jmpOn && jmpOn++ <= 1)
      longjmp(env,Err_);
    else
      eic_disaster();
}
void EiC_stor_access(int i)
{
    signal(SIGSEGV, EiC_stor_access);
    errStr("EiC illegal storage access");
    if(jmpOn && jmpOn++ <= 1)  {
	longjmp(env,Err_);
    } else
	eic_disaster();
}

void EiC_float_err(int i)
{
    signal(SIGFPE, EiC_float_err);
    errStr("EiC maths  exception");
    if(jmpOn && jmpOn++ <= 1)
      longjmp(env,Err_);
    else
      eic_disaster();
}

void EiC_term_int(int i)
{
    signal(SIGINT, EiC_term_int);
    errStr("EiC interrupted");
    if(jmpOn && jmpOn++ <= 1)
      longjmp(env,Err_);
    else
      eic_disaster();
}

FILE *EiChist = NULL;
extern int EiC_verboseON, EiC_SHOWLINE, EiC_traceON, EiC_TIMER,
    EiC_interActive, EiC_showIncludes;
int silent = 0, HistoryFile = 1;
int StartUpH = 1;
int reStart = 0, prompt = 0;
int EiC_Interact = 1;
int ScriptMode = 0;
static int FREE_G_STRING = 1;


void usage(void)
{
    puts("\n\t\tEiC\n"
	 " An Extensible Interactive C interpreter\n"
	 " To start eic, type eic.\n"
	 " To exit eic, type :exit.\n"
	 "\n Usage:\n"
	 "\teic  [-Ipath] [-Dname[=var]] -[hHvVcCrR]  [[file] [fileargs]]\n"
	 " Options:\n"
	 "   C preprocessor directives:\n"
	 "\t-Ipath      search for include files in path\n"
	 "\t-Dname      define a symbolic name to the value 1\n"
	 "\t-Dname=var  define a symbolic name to the value var\n"
	 "\t            Note, there is no spaces allowed\n"
	 "   EiC directives:\n"
	 "\t-h -H       causes this usage to be displayed\n"
	 "\t-v -V       print EiC's Log information\n"
	 "\t-p          showline\n"
	 "\t-P          show path of include files\n"
	 "\t-t -T       turns trace on\n"
	 "\t-c -C       turns timer on\n"
	 "\t-e          echo HTML mode\n" 
	 "\t-r          restart EiC. Causes EiC to be re initiated\n"
         "\t               from the contents of EiChist.lst file\n"
	 "\t-R          same as `r', but prompts the user to accept\n"
	 "\t               or reject each input line first\n" 
	 "\t-s -S       run silently\n"
	 "\t-f          run in script mode\n"
	 "\t-n          no history file\n"
	 "\t-N          don't use any startup.h files\n"
	 "\t-A          Non-interactive-mode\n"
	 "\tfile        EiC will execute `file' and then stop; for example:\n"
	 "\t              % eic foo.c \n"
	 "\tfileargs    command line arguments, which get passed onto file\n"
	 );
    exit(1);
}

int do_sw_commands(char *cp)
{
    while(*cp) {
	switch(*cp++) {
	case 'D': dodefine(cp);  return 1;
	case 'I': EiC_insertpath(cp); return 1;
	case '\?':
	case 'h':
	case 'H': usage();
	case 'c':
	case 'C': EiC_TIMER = 1; break;
	#ifndef NO_HTML
	case 'e':
	    /* connect stderr to stdout */
	    dup2(1,2); 
	    /* setup stdout to behave like stderr */
	    if(setvbuf(stdout,NULL,_IONBF,0) != 0)
		EiC_error("failed to setup stdout\n");
	    /* inform the browser */
	    puts("Content-type: text/plain\n\n");
	    break;
	#endif
	case 'v':
	case 'V': puts(Version); exit(1);

	case 'R': prompt = 1;
	case 'r': reStart = 1;  break;

	case 's': 
	case 'S': silent = 1; break; 

	case 'f': ScriptMode = 1; break;
	case 'p': EiC_SHOWLINE = 1; break;
	case 'P': EiC_showIncludes = 1; break;
	case 't':
	case 'T': EiC_traceON = 1; break;
	case 'n': HistoryFile = 0; break;
	case 'N': StartUpH = 0; break;
	case 'A': EiC_Interact = 0; break;
	default:
	    while(isspace(*cp)) cp++;
	    if(*cp == '-')  /* assume script mode */
		while(isspace(*++cp));
	    else if(*cp)  /* catch for lines ending with whitespace */
		return 0;
	}
    }
    return 1;
}



void EiC_save_history(FILE *fp, int from);

extern int EiC_verboseON;

int EiC_Include_file(char *, int);
void EiC_marksyms(char);
    
char *inbuf;
extern char *EiC_nextproline();
extern int EiC_listcodeON, EiC_interpON,EiC_memdumpON;
extern unsigned long EiC_tot_memory;
extern size_t EiC_tot_alloc;

void do_displays()
{
    if(EiC_verboseON)
	printf("\ninstr = %d sARsize = %d  lsp = %d aARsize  = %d\n"
	       "EiC_tot_alloc = %lu EiC_tot_memory = %lu\n",
	       EiC_ENV->CODE.nextinst,
	       EiC_ENV->ARsize,
	       EiC_ENV->lsp,
	       EiC_ENV->LARsize,
	       (unsigned long)EiC_tot_alloc,
	       EiC_tot_memory);
    EiC_listcode(&EiC_ENV->CODE);
}

void runEiC()
{
    void EiC_remTempories(void);
    void EiC_peephole(code_t *c);
    int EiC_getHistLineNo(), hfrom = 0;

    /* Hawk start change */
	EiC_ParseError = 0;
    /* Hawk change */

    /* Hawk start change */
    __try {
    /* Hawk change */
    switch(setjmp(env)) {
	case 0:
	    jmpOn = 1;

	    EiCp_initiateReset();

#ifndef NO_HISTORY
	    hfrom = EiC_getHistLineNo();
#endif
	    inbuf = EiC_nextproline();

	    EiC_initlex(inbuf);
	    EiC_initparser();
	    EiC_parse(EiC_ENV);
	    EiC_peephole(&getenvcode(EiC_ENV));
	
	    if(EiC_listcodeON)
		do_displays();
	    if (EiC_ENV->CODE.nextinst && EiC_interpON && !EiC_ParseError)
		EiC_interpret(EiC_ENV);
	    break;
	
	default:
	    EiC_messageDisplay("EiC reports an unRecognised jmp condition in starteic.c"); 
	case Err_:
	    EiC_ParseError = 1;
	    break;
	case Exit_:
	    EiC_messageDisplay("Exit called: force clean up!\n");
	    EiC_ParseError = 1;
	    break;

	    
    }
    /* Hawk start change */
    } __finally {
    /* Hawk change */

    if (EiC_errs) 
	EiC_clear_err_msgs();

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩av一二三| 欧美tk—视频vk| 日韩精品中文字幕在线不卡尤物 | 国产一区二区导航在线播放| 成人激情免费网站| 精品久久人人做人人爱| 亚洲在线中文字幕| 成人精品国产一区二区4080| 欧美成人性战久久| 亚洲第一福利视频在线| www.激情成人| 国产丝袜欧美中文另类| 国产一区二区主播在线| 欧美一区二区三区四区五区| 亚洲免费三区一区二区| 国产91精品欧美| 国产亚洲精品超碰| 国产精品综合一区二区三区| 欧美性xxxxxxxx| 亚洲黄色小说网站| 色综合色综合色综合色综合色综合| 精品国产乱码久久久久久图片| 亚洲第一av色| 在线成人免费视频| 强制捆绑调教一区二区| 在线播放日韩导航| 日韩成人一级片| 91精品国产91综合久久蜜臀| 亚洲福利一区二区三区| 欧美日韩国产一二三| 亚洲国产欧美在线人成| 日本久久一区二区| 亚洲综合色区另类av| 色婷婷av一区二区三区gif| 国产精品乱码久久久久久| 国产精品亚洲人在线观看| 久久这里只精品最新地址| 久久se这里有精品| 久久久久久麻豆| 高清国产一区二区三区| 中文字幕av一区二区三区高| 不卡在线视频中文字幕| 亚洲免费电影在线| 欧美日韩精品系列| 久久精品国产一区二区| 国产欧美一区二区精品性色超碰| av电影在线观看一区| 亚洲另类春色国产| 9191久久久久久久久久久| 青青草国产成人99久久| 国产婷婷色一区二区三区| 99久久99久久久精品齐齐| 亚洲一区在线电影| 日韩三级中文字幕| 国产aⅴ精品一区二区三区色成熟| 国产精品区一区二区三区| 一本色道久久综合狠狠躁的推荐| 亚洲国产精品久久人人爱| 日韩欧美第一区| 成人av资源下载| 亚洲成人资源在线| 久久久久久日产精品| 91一区二区三区在线播放| 日产精品久久久久久久性色| 国产日韩欧美精品电影三级在线| 97精品视频在线观看自产线路二| 午夜精品免费在线| 欧美精品一区二区三区蜜桃| proumb性欧美在线观看| 无吗不卡中文字幕| 久久精品人人做| 在线看国产一区| 国产综合色精品一区二区三区| 国产精品国模大尺度视频| 日韩一区二区免费在线观看| 成人午夜看片网址| 免费成人av在线| 一区二区在线观看视频在线观看| 久久一夜天堂av一区二区三区| 91美女精品福利| 国产乱子伦视频一区二区三区| 午夜视频在线观看一区二区三区| 国产欧美日产一区| 日韩一区二区三区免费看| 97国产一区二区| 国产成人精品亚洲日本在线桃色| 亚洲va天堂va国产va久| 国产精品理论在线观看| 精品国产制服丝袜高跟| 欧美日韩一区久久| 色综合中文字幕国产| 另类小说图片综合网| 午夜久久福利影院| 亚洲人成网站影音先锋播放| 精品国产91久久久久久久妲己| 欧美日韩精品欧美日韩精品一综合| 国产99久久久久久免费看农村| 蜜臀国产一区二区三区在线播放 | 视频一区二区国产| 国产精品电影一区二区| 久久精品一区二区| 久久久久久电影| 久久综合色8888| 日韩欧美国产麻豆| 日韩精品一区二区三区四区 | 久久精品久久精品| 日产精品久久久久久久性色| 亚洲成在人线免费| 亚洲午夜国产一区99re久久| 国产精品免费av| 久久综合成人精品亚洲另类欧美| 日韩精品中文字幕在线一区| 日韩精品一区二区三区中文不卡 | 亚洲影视在线播放| 亚洲综合视频网| 亚洲成人在线网站| 蜜桃视频在线观看一区| 免费精品视频最新在线| 美女国产一区二区三区| 久久99国产精品久久| 国产高清不卡一区| 成人av午夜电影| 99在线精品视频| 在线观看日产精品| 欧美乱妇一区二区三区不卡视频| 在线电影国产精品| 久久影院视频免费| 中文字幕日韩精品一区 | 在线观看国产精品网站| 欧美视频一区二| 777午夜精品免费视频| 欧美成人性福生活免费看| 国产亚洲午夜高清国产拍精品| 久久久久久久综合日本| 亚洲视频一区二区在线观看| 一区二区国产盗摄色噜噜| 日韩电影在线一区| 国产精品小仙女| 91久久人澡人人添人人爽欧美| 在线观看一区不卡| 欧美成人午夜电影| 日韩毛片在线免费观看| 日日摸夜夜添夜夜添亚洲女人| 久久精品国产一区二区三| 99久久精品免费观看| 欧美性videosxxxxx| 久久亚洲捆绑美女| 一区二区高清免费观看影视大全| 蜜臀久久99精品久久久画质超高清 | 国产在线不卡视频| 一本大道久久a久久精品综合| 欧美理论在线播放| 国产精品欧美极品| 天天综合网天天综合色| 国产宾馆实践打屁股91| 欧美视频一区二| 国产精品久久三区| 全国精品久久少妇| 91在线观看视频| 精品国产91洋老外米糕| 亚洲午夜激情av| 成a人片亚洲日本久久| 精品少妇一区二区三区视频免付费 | 欧美日韩aaaaa| 国产精品每日更新| 久久精品国产99| 91久久精品日日躁夜夜躁欧美| 精品动漫一区二区三区在线观看| 亚洲伦在线观看| 国产精品一区免费视频| 欧美一区二区福利视频| 亚洲激情校园春色| 成人午夜免费av| 久久夜色精品一区| 六月丁香婷婷久久| 91精品国产综合久久国产大片| 国产精品国产三级国产专播品爱网| 久久66热偷产精品| 欧美日本在线播放| 亚洲一区二区欧美激情| 成年人国产精品| 中文一区一区三区高中清不卡| 日本中文字幕一区| 欧美精品vⅰdeose4hd| 亚洲男人天堂av| av不卡在线观看| 国产精品黄色在线观看| 国产成人在线视频免费播放| 日韩精品综合一本久道在线视频| 五月婷婷综合在线| 色婷婷久久久久swag精品 | 国产精品第四页| 国产成人av在线影院| 国产婷婷色一区二区三区| 国产一区视频网站| 久久影院视频免费| 国产精品一区二区无线| 久久久综合视频| 国产精品99久久久久久似苏梦涵| 久久综合久久鬼色中文字|