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

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

?? hooks.c

?? c5.0算法源代碼
?? C
?? 第 1 頁 / 共 5 頁
字號(hào):
    }    return LongestAtt;}/*************************************************************************//*									 *//*	Error message routines.  Syntax errors come from the		 *//*	recursive descent parser, semantics errors from the routines	 *//*	that build up the equivalent polish				 *//*									 *//*************************************************************************/void DefSyntaxError(String Msg)/*   --------------  */{    String	RestOfText;    int		i=10;    if ( ! PreviousError )    {	RestOfText = Buff + BN;	/*  Abbreviate text if longer than 12 characters  */	if ( CharWidth(RestOfText) > 12 )	{#ifdef UTF8	    /*  Find beginning of UTF-8 character  */	    for ( ; (RestOfText[i] & 0x80) ; i++ )		;#endif	    RestOfText[i] = RestOfText[i+1] = '.';	}	Error(BADDEF1, RestOfText, Msg);	PreviousError = true;    }}void DefSemanticsError(int Fi, String Msg, int OpCode)/*   -----------------  */{    char	Exp[1000], XMsg[1000], Op[1000];    if ( ! PreviousError )    {	/*  Abbreviate the input if necessary  */	if ( BN - Fi > 23 )	{	    sprintf(Exp, "%.10s...%.10s", Buff+Fi, Buff+BN-10);	}	else	{	    sprintf(Exp, "%.*s", BN - Fi, Buff+Fi);	}	switch ( OpCode )	{	    case OP_AND:	sprintf(Op, "%s", "and"); break;	    case OP_OR:		sprintf(Op, "%s", "or"); break;	    case OP_SEQ:	    case OP_EQ:		sprintf(Op, "%s", "="); break;	    case OP_SNE:	    case OP_NE:		sprintf(Op, "%s", "<>"); break;	    case OP_GT:		sprintf(Op, "%s", ">"); break;	    case OP_GE:		sprintf(Op, "%s", ">="); break;	    case OP_LT:		sprintf(Op, "%s", "<"); break;	    case OP_LE:		sprintf(Op, "%s", "<="); break;	    case OP_PLUS:	sprintf(Op, "%s", "+"); break;	    case OP_MINUS:	sprintf(Op, "%s", "-"); break;	    case OP_UMINUS:	sprintf(Op, "%s", "unary -"); break;	    case OP_MULT:	sprintf(Op, "%s", "*"); break;	    case OP_DIV:	sprintf(Op, "%s", "/"); break;	    case OP_MOD:	sprintf(Op, "%s", "%"); break;	    case OP_POW:	sprintf(Op, "%s", "^"); break;	    case OP_SIN:	sprintf(Op, "%s", "sin"); break;	    case OP_COS:	sprintf(Op, "%s", "cos"); break;	    case OP_TAN:	sprintf(Op, "%s", "tan"); break;	    case OP_LOG:	sprintf(Op, "%s", "log"); break;	    case OP_EXP:	sprintf(Op, "%s", "exp"); break;	    case OP_INT:	sprintf(Op, "%s", "int");	}	sprintf(XMsg, "%s with '%s'", Msg, Op);	Error(BADDEF2, Exp, XMsg);	PreviousError = true;    }}/*************************************************************************//*									 *//*	Reverse polish routines.  These use a model of the stack	 *//*	during expression evaluation to detect type conflicts etc	 *//*									 *//*************************************************************************/void Dump(char OpCode, ContValue F, String S, int Fi)/*   ----  */{    if ( Buff[Fi] == ' ' ) Fi++;    if ( ! UpdateTStack(OpCode, F, S, Fi) ) return;    /*  Make sure enough room for this element  */    if ( DN >= DefSize-1 )    {	Realloc(AttDef[MaxAtt], DefSize += 100, DefElt);    }    DefOp(AttDef[MaxAtt][DN]) = OpCode;    if ( OpCode == OP_ATT || OpCode == OP_STR )    {	DefSVal(AttDef[MaxAtt][DN]) = S;    }    else    {	DefNVal(AttDef[MaxAtt][DN]) = F;    }    DN++;}void DumpOp(char OpCode, int Fi)/*   ------  */{    Dump(OpCode, 0, Nil, Fi);}Boolean UpdateTStack(char OpCode, ContValue F, String S, int Fi)/*      ------------  */{    if ( TSN >= TStackSize )    {	Realloc(TStack, TStackSize += 50, EltRec);    }    switch ( OpCode )    {	case OP_ATT:		TStack[TSN].Type = ( Continuous((int) S) ? 'N' : 'S' );		break;	case OP_NUM:		TStack[TSN].Type = 'N';		break;	case OP_STR:		TStack[TSN].Type = 'S';		break;	case OP_AND:	case OP_OR:		if ( TStack[TSN-2].Type != 'B' || TStack[TSN-1].Type != 'B' )		{		    FailSem("non-logical value");		}		TSN -= 2;		break;	case OP_EQ:	case OP_NE:		if ( TStack[TSN-2].Type != TStack[TSN-1].Type )		{		    FailSem("incompatible values");		}		TSN -= 2;		TStack[TSN].Type = 'B';		break;	case OP_GT:	case OP_GE:	case OP_LT:	case OP_LE:		if ( TStack[TSN-2].Type != 'N' || TStack[TSN-1].Type != 'N' )		{		    FailSem("non-arithmetic value");		}		TSN -= 2;		TStack[TSN].Type = 'B';		break;	case OP_SEQ:	case OP_SNE:		if ( TStack[TSN-2].Type != 'S' || TStack[TSN-1].Type != 'S' )		{		    FailSem("incompatible values");		}		TSN -= 2;		TStack[TSN].Type = 'B';		break;	case OP_PLUS:	case OP_MINUS:	case OP_MULT:	case OP_DIV:	case OP_MOD:	case OP_POW:		if ( TStack[TSN-2].Type != 'N' || TStack[TSN-1].Type != 'N' )		{		    FailSem("non-arithmetic value");		}		TSN -= 2;		break;	case OP_UMINUS:		if ( TStack[TSN-1].Type != 'N' )		{		    FailSem("non-arithmetic value");		}		TSN--;		break;	case OP_SIN:	case OP_COS:	case OP_TAN:	case OP_LOG:	case OP_EXP:	case OP_INT:		if ( TStack[TSN-1].Type != 'N' )		{		    FailSem("non-arithmetic argument");		}		TSN--;    }    TStack[TSN].Fi = Fi;    TStack[TSN].Li = BN-1;    TSN++;    return true;}/*************************************************************************//*									 *//*	Evaluate an implicit attribute for a case			 *//*									 *//*************************************************************************/#define UNA(a)	(UnknownVal(XStack[a]) || NotApplicVal(XStack[a]))#define	C1(x)	(UNA(XSN-1) ? _UNK.cval : (x))#define	C2(x)	(UNA(XSN-1) || UNA(XSN-2) ? _UNK.cval : (x))#define	D2(x)	(UNA(XSN-1) || UNA(XSN-2) ? _UNK.dval : (x))#define	D2(x)	(UNA(XSN-1) || UNA(XSN-2) ? _UNK.dval : (x))#define	SetCVal#define	SetDValAttValue EvaluateDef(Definition D, Description Case)/*       -----------  */{    AttValue	XStack[100];			/* allows 100-level nesting  */    int		XSN=0, DN, bv1, bv2, Mult;    double	cv1, cv2;    String	sv1, sv2;    Attribute	Att;    DefElt	DElt;    for ( DN = 0 ; ; DN++)    {	switch ( DefOp((DElt = D[DN])) )	{	    case OP_ATT:		    Att = (int) DefSVal(DElt);		    if ( Continuous(Att) )		    {			XStack[XSN++].cval =			    ( NotApplic(Case, Att) ? _NA.cval :			      Unknown(Case, Att) ? _UNK.cval :			      CVal(Case, Att) );			SetDVal;		    }		    else		    {			XStack[XSN++].sval =			    ( Unknown(Case, Att) && ! NotApplic(Case, Att) ? 0 :			      AttValName[Att][XDVal(Case, Att)] );			SetCVal;		    }		    break;	    case OP_NUM:		    XStack[XSN++].cval = DefNVal(DElt);		    SetDVal;		    break;	    case OP_STR:		    XStack[XSN++].sval = DefSVal(DElt);		    SetCVal;		    break;	    case OP_AND:		    bv1 = XStack[XSN-2].dval;		    bv2 = XStack[XSN-1].dval;		    XStack[XSN-2].dval = ( bv1 == 3 || bv2 == 3 ? 3 :					   D2(bv1 == 2 && bv2 == 2 ? 2 : 3) );		    XSN--;		    SetCVal;		    break;	    case OP_OR:		    bv1 = XStack[XSN-2].dval;		    bv2 = XStack[XSN-1].dval;		    XStack[XSN-2].dval = ( bv1 == 2 || bv2 == 2 ? 2 :					   D2(bv1 == 2 || bv2 == 2 ? 2 : 3) );		    XSN--;		    SetCVal;		    break;	    case OP_EQ:		    cv1 = XStack[XSN-2].cval;		    cv2 = XStack[XSN-1].cval;		    XStack[XSN-2].dval = ( cv1 == cv2 ? 2 : 3 );		    XSN--;		    SetCVal;		    break;	    case OP_NE:		    cv1 = XStack[XSN-2].cval;		    cv2 = XStack[XSN-1].cval;		    XStack[XSN-2].dval = ( cv1 != cv2 ? 2 : 3 );		    XSN--;		    SetCVal;		    break;	    case OP_GT:		    cv1 = XStack[XSN-2].cval;		    cv2 = XStack[XSN-1].cval;		    XStack[XSN-2].dval = D2(cv1 > cv2 ? 2 : 3);		    XSN--;		    SetCVal;		    break;	    case OP_GE:		    cv1 = XStack[XSN-2].cval;		    cv2 = XStack[XSN-1].cval;		    XStack[XSN-2].dval = D2(cv1 >= cv2 ? 2 : 3);		    XSN--;		    SetCVal;		    break;	    case OP_LT:		    cv1 = XStack[XSN-2].cval;		    cv2 = XStack[XSN-1].cval;		    XStack[XSN-2].dval = D2(cv1 < cv2 ? 2 : 3);		    XSN--;		    SetCVal;		    break;	    case OP_LE:		    cv1 = XStack[XSN-2].cval;		    cv2 = XStack[XSN-1].cval;		    XStack[XSN-2].dval = D2(cv1 <= cv2 ? 2 : 3);		    XSN--;		    SetCVal;		    break;	    case OP_SEQ:		    sv1 = XStack[XSN-2].sval;		    sv2 = XStack[XSN-1].sval;		    XStack[XSN-2].dval =			( ! sv1 && ! sv2 ? 2 :			  ! sv1 || ! sv2 ? 3 :			  ! strcmp(sv1, sv2) ? 2 : 3 );		    XSN--;		    SetCVal;		    break;	    case OP_SNE:		    sv1 = XStack[XSN-2].sval;		    sv2 = XStack[XSN-1].sval;		    XStack[XSN-2].dval =			( ! sv1 && ! sv2 ? 3 :			  ! sv1 || ! sv2 ? 2 :			  strcmp(sv1, sv2) ? 2 : 3 );		    XSN--;		    SetCVal;		    break;	    case OP_PLUS:		    cv1 = XStack[XSN-2].cval;		    cv2 = XStack[XSN-1].cval;		    XStack[XSN-2].cval = C2(cv1 + cv2);		    XSN--;		    SetDVal;		    break;	    case OP_MINUS:		    cv1 = XStack[XSN-2].cval;		    cv2 = XStack[XSN-1].cval;		    XStack[XSN-2].cval = C2(cv1 - cv2);		    XSN--;		    SetDVal;		    break;	    case OP_MULT:		    cv1 = XStack[XSN-2].cval;		    cv2 = XStack[XSN-1].cval;		    XStack[XSN-2].cval = C2(cv1 * cv2);		    XSN--;		    SetDVal;		    break;	    case OP_DIV:		    /*  Note: have to set precision of result  */		    cv1 = XStack[XSN-2].cval;		    cv2 = XStack[XSN-1].cval;		    if ( ! cv2 ||			 UnknownVal(XStack[XSN-2]) ||			 UnknownVal(XStack[XSN-1]) ||			 NotApplicVal(XStack[XSN-2]) ||			 NotApplicVal(XStack[XSN-1]) )		    {			XStack[XSN-2] = _UNK;		    }		    else		    {			Mult = Denominator(cv1);			cv1 = cv1 / cv2;			while ( fabs(cv2) > 1 )			{			    Mult *= 10;			    cv2 /= 10;			}			XStack[XSN-2].cval = rint(cv1 * Mult) / Mult;		    }		    XSN--;		    SetDVal;		    break;	    case OP_MOD:		    cv1 = XStack[XSN-2].cval;		    cv2 = XStack[XSN-1].cval;		    XStack[XSN-2].cval = C2(fmod(cv1, cv2));		    XSN--;		    SetDVal;		    break;	    case OP_POW:		    cv1 = XStack[XSN-2].cval;		    cv2 = XStack[XSN-1].cval;		    XStack[XSN-2].cval =			( UNA(XSN-1) || UNA(XSN-2) ||			  ( cv1 < 0 && ceil(cv2) != cv2 ) ? _UNK.cval :			  pow(cv1, cv2) );		    XSN--;		    SetDVal;		    break;	    case OP_UMINUS:		    cv1 = XStack[XSN-1].cval;		    XStack[XSN-1].cval = C1(-cv1);		    SetDVal;		    break;	    case OP_SIN:		    cv1 = XStack[XSN-1].cval;		    XStack[XSN-1].cval = C1(sin(cv1));		    SetDVal;		    break;	    case OP_COS:		    cv1 = XStack[XSN-1].cval;		    XStack[XSN-1].cval = C1(cos(cv1));		    SetDVal;		    break;	    case OP_TAN:		    cv1 = XStack[XSN-1].cval;		    XStack[XSN-1].cval = C1(tan(cv1));		    SetDVal;		    break;	    case OP_LOG:		    cv1 = XStack[XSN-1].cval;		    XStack[XSN-1].cval =			( UNA(XSN-1) || cv1 <= 0 ? _UNK.cval : log(cv1) );		    SetDVal;		    break;	    case OP_EXP:		    cv1 = XStack[XSN-1].cval;		    XStack[XSN-1].cval = C1(exp(cv1));		    SetDVal;		    break;	    case OP_INT:		    cv1 = XStack[XSN-1].cval;		    XStack[XSN-1].cval = C1(rint(cv1));		    SetDVal;		    break;	    case OP_END:		    return XStack[0];	}    }}/*************************************************************************//*									 *//*	Routines for reading model files				 *//*	--------------------------------				 *//*									 *//*************************************************************************/Boolean	BINARY=false;int	Entry;char*	Prop[]={"null",		"att",		"class",		"cut",		"conds",		"elts",		"entries",		"forks",		"freq",		"id",		"type",		"low",		"mid",		"high",		"result",		"rules",		"val",		"lift",		"cover",		"ok",		"default",		"costs",		"sample",		"init"	       };char	PropName[20],	*PropVal=Nil,	*Unquoted;int	PropValSize=0;#define	PROPS 23#define	ERRORP		0#define ATTP		1#define CLASSP		2#define CUTP		3#define	CONDSP		4#define ELTSP		5#define ENTRIESP	6#define FORKSP		7#define FREQP		8#define IDP		9#define TYPEP		10#define LOWP		11#define MIDP		12#define HIGHP		13#define RESULTP		14#define RULESP		15#define VALP		16#define LIFTP		17#define COVERP		18#define OKP		19#define DEFAULTP	20#define COSTSP		21/*************************************************************************//*									 *//*	Read header information and decide whether model files are	 *//*	in ASCII or binary format					 *//*									 *//*************************************************************************/void ReadFilePrefix(String Extension)/*   --------------  */{#if defined WIN32 || defined _CONSOLE    if ( ! (TRf = GetFile(Extension, "rb")) ) Error(NOFILE, Fn, "");#else    if ( ! (TRf = GetFile(Extension, "r")) ) Error(NOFILE, Fn, "");#endif    StreamIn((char *) &TRIALS, sizeof(int));    if ( memcmp((char *) &TRIALS, "id=", 3) != 0 )    {	BINARY = true;	BinRecoverDiscreteNames();    }    else    {	BINARY = false;	rewind(TRf);	ReadHeader();    }}/*************************************************************************//*								  	 *//*	Read the header information (id, saved names, models)		 *//*								  	 *//*************************************************************************/void ReadHeader()/*   ---------  */{    Attribute	Att;    DiscrValue	v;    char	*p, Dummy;    int		Year, Month, Day;    FILE	*F;    while ( true )    {	switch ( ReadProp(&Dummy) )	{	    case ERRORP:		return;	    case IDP:		/*  Recover year run and set base date for timestamps  */		if ( sscanf(PropVal + strlen(PropVal) - 11,			    "%d-%d-%d\"", &Year, &Month, &Day) == 3 )		{		    SetTSBase(Year);		}		break;	    case COSTSP:		/*  Recover costs file used to generate model  */		if ( (F = GetFile(".costs", "r")) )		{		    GetMCosts(F);

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美色欧美亚洲另类二区| 国产黑丝在线一区二区三区| 中文字幕精品—区二区四季| 经典一区二区三区| 日韩不卡一区二区三区 | 成人激情视频网站| 国产一区在线精品| 亚洲欧洲国产专区| 中文字幕中文字幕一区二区| 中文字幕在线不卡| 18成人在线视频| 一区二区三区高清在线| 日韩视频国产视频| 99热这里都是精品| 麻豆国产一区二区| 国精品**一区二区三区在线蜜桃| 国产精品美女久久福利网站| 国产精品久久午夜| 一区二区三区产品免费精品久久75| 欧美男人的天堂一二区| 91精品国产综合久久久久久久 | 亚洲免费观看高清完整| 精品不卡在线视频| 久久久精品国产免大香伊| 欧洲精品一区二区| 欧美美女网站色| 久久一区二区三区四区| 欧美日本免费一区二区三区| 成人在线综合网| 极品美女销魂一区二区三区免费| 亚洲欧美色综合| 日韩综合在线视频| 国产白丝精品91爽爽久久| 91蜜桃免费观看视频| 欧美日韩电影一区| 国产欧美日韩亚州综合| 精品福利一二区| 亚洲丝袜制服诱惑| 久久99精品国产麻豆不卡| 亚洲国产精品久久不卡毛片| 免费在线成人网| 日本美女视频一区二区| 国产成人三级在线观看| 欧美三片在线视频观看| 国产喷白浆一区二区三区| 亚洲国产一二三| 国产福利一区二区三区在线视频| 免费观看在线综合色| 91丨国产丨九色丨pron| 日韩精品中文字幕在线不卡尤物 | 亚洲国产一区二区a毛片| 国产精品一区二区三区乱码| 91香蕉视频在线| 欧美videos中文字幕| 精品国产伦一区二区三区观看方式 | 91久久国产综合久久| 日韩欧美国产综合一区| 日韩午夜精品视频| 亚洲综合男人的天堂| 国产 欧美在线| 日韩欧美一级精品久久| 亚洲一区二区三区影院| 粉嫩嫩av羞羞动漫久久久| 欧美成人三级电影在线| 亚洲丰满少妇videoshd| 91一区在线观看| 国产女同互慰高潮91漫画| 国产精品污www在线观看| 精品中文字幕一区二区| 91精品国模一区二区三区| 精品国产伦一区二区三区免费| 2024国产精品| 久久精品国产99国产| 欧美日韩mp4| 日韩欧美一区二区三区在线| 欧美极品美女视频| 亚洲综合一二三区| 91在线视频网址| 日韩一区二区三| 国产亚洲精品7777| 韩国三级电影一区二区| 日韩视频在线一区二区| 日本不卡在线视频| 日韩视频免费直播| 精品美女一区二区| 狠狠狠色丁香婷婷综合激情| 在线综合亚洲欧美在线视频| 日韩av电影免费观看高清完整版| 国产美女主播视频一区| 久久精品在线免费观看| 成人综合婷婷国产精品久久蜜臀 | 8v天堂国产在线一区二区| 亚洲一区二区在线免费观看视频| 韩国毛片一区二区三区| 在线亚洲欧美专区二区| 亚洲午夜激情av| 国产露脸91国语对白| 欧美精品一区二区三区四区| 国产一区二区看久久| 亚洲国产岛国毛片在线| 91美女在线观看| 亚洲成人免费在线观看| 日韩三级视频在线看| 国产精品888| 亚洲乱码国产乱码精品精可以看| 国产精品理伦片| 国产精品一二三四区| 欧美主播一区二区三区美女| 精品日韩一区二区| 亚洲色图19p| 欧美肥大bbwbbw高潮| 国产盗摄一区二区| 一本一道综合狠狠老| 日韩国产精品久久久| 久久精品视频在线免费观看| 99久久精品国产一区| 国产亚洲福利社区一区| 色综合欧美在线视频区| 麻豆精品在线看| 亚洲男同性恋视频| 欧美一区二区啪啪| 日韩专区一卡二卡| 欧美国产日产图区| 日韩精品专区在线影院重磅| 色综合久久88色综合天天免费| 国产午夜亚洲精品羞羞网站| 老司机免费视频一区二区| 日本一区二区三区高清不卡| 欧美精品第一页| 不卡视频在线看| 久久国产生活片100| 亚洲一区成人在线| 国产精品网曝门| 精品理论电影在线| 91精品国产福利在线观看 | 亚洲精品美国一| 国产网站一区二区| 成人午夜碰碰视频| 久久精品国产精品亚洲精品| 亚洲午夜久久久久久久久电影网| 欧美日韩国产一二三| 99麻豆久久久国产精品免费优播| 中文字幕亚洲不卡| 中文字幕一区二区三区不卡在线 | 日本麻豆一区二区三区视频| 一区二区三区成人| 亚洲欧美另类综合偷拍| 国产精品看片你懂得| 欧美va亚洲va香蕉在线| 欧美一区二区国产| 91精品国产综合久久精品| 欧美日韩精品一区二区三区| 91日韩精品一区| 色呦呦国产精品| 9i在线看片成人免费| 99久久精品国产网站| 菠萝蜜视频在线观看一区| www.日韩在线| 99久久精品免费| 欧美性淫爽ww久久久久无| 日本久久电影网| 欧美喷潮久久久xxxxx| 在线不卡中文字幕| 日韩视频一区二区在线观看| 精品日韩在线观看| 久久久综合九色合综国产精品| av不卡免费电影| 99re成人精品视频| 91久久一区二区| 欧美午夜电影在线播放| 欧美丰满少妇xxxxx高潮对白| 狠狠色狠狠色综合日日91app| 一区二区日韩av| 天天综合网天天综合色| 久久国产福利国产秒拍| 国产欧美一区二区精品仙草咪| 欧美亚洲一区二区在线观看| 欧洲精品一区二区| 欧美大白屁股肥臀xxxxxx| 日韩免费观看高清完整版在线观看| 91欧美激情一区二区三区成人| 天堂av在线一区| 国产综合色视频| 色94色欧美sute亚洲13| 91理论电影在线观看| 精品视频在线免费观看| wwww国产精品欧美| 亚洲色图丝袜美腿| 麻豆国产91在线播放| 成人免费毛片片v| 激情综合五月婷婷| 色就色 综合激情| 日韩美女在线视频| 亚洲三级在线观看| 美女视频一区二区| 91麻豆成人久久精品二区三区| 国产成人综合视频| 国产在线精品免费| 国产综合久久久久影院| 蜜桃视频在线观看一区|