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

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

?? asearch.c

?? Mehldau和Myer的Agrep3版本
?? C
?? 第 1 頁 / 共 3 頁
字號:
		/* if (DELIMITER) tempbuf = (CHAR*)malloc(D_length + 1); */
		buffer = (CHAR *)agrep_inbuffer;
		l = agrep_inlen;
		end = l;
		/* buffer[end-1] = '\n'; */ /* at end of the text. */
		/* buffer[0] = '\n'; */  /* in front of the  text. */
		i = 0;
		if(DELIMITER) {
			for(k=0; k<D_length; k++) {
				if(old_D_pat[k] != buffer[k]) break;
			}
			if(k>=D_length) j--;
			/*
			memcpy(tempbuf, buffer+end, D_length+1);
			strncpy(buffer+end, old_D_pat, D_length);
			buffer[end+D_length] = '\0';
			end = end + D_length;
			*/
		}

			/* An exact copy of the above ASEARCH_PROCESS: the while-loop below */
			while (i < end )
			{
				c = buffer[i];
				CMask = Mask[c];
				r1 = r_Init1 & B0;
				A0 = ((B0 >>1 ) & CMask) | r1;
				r1 = r_Init1 & B1;
				r2 =  B0 | (((A0 | B0) >> 1) & r_NO_ERR); 
				A1 = ((B1 >>1 ) & CMask) | r2 | r1 ;  
				if(D == 1) goto Nextcharmem;
				r1 = r_Init1 & B2;
				r2 =  B1 | (((A1 | B1) >> 1) & r_NO_ERR); 
				A2 = ((B2 >>1 ) & CMask) | r2 | r1 ;  
				if(D == 2) goto Nextcharmem;
				r1 = r_Init1 & B3;
				r2 =  B2 | (((A2 | B2) >> 1) & r_NO_ERR); 
				A3 = ((B3 >>1 ) & CMask) | r2 | r1 ;  
				if(D == 3) goto Nextcharmem;
				r1 = r_Init1 & B4;
				r2 =  B3 | (((A3 | B3) >> 1) & r_NO_ERR); 
				A4 = ((B4 >>1 ) & CMask) | r2 | r1 ;  
				if(D == 4) goto Nextcharmem;
Nextcharmem: 
				i=i+1;
				CurrentByteOffset ++;
				if(A0 & endpos) {
					j++;  
					if (DELIMITER) CurrentByteOffset -= D_length;
					else CurrentByteOffset -= 1;
					r1 = A0;
					if ( D == 1) r1 = A1;
					if ( D == 2) r1 = A2;
					if ( D == 3) r1 = A3;
					if ( D == 4) r1 = A4;
					if(((AND == 1) && ((r1 & endposition) == endposition)) || ((AND == 0) && (r1 & endposition)) ^ INVERSE )
					{    
						if(FILENAMEONLY && (NEW_FILE || !POST_FILTER)) {
							num_of_matched++;
							if (agrep_finalfp != NULL) 
								fprintf(agrep_finalfp, "%s\n", CurrentFileName);
							else {
								int outindex;
								for(outindex=0; (outindex+agrep_outpointer<agrep_outlen) && 
										(CurrentFileName[outindex] != '\0'); outindex++) {
									agrep_outbuffer[agrep_outpointer+outindex] = CurrentFileName[outindex];
								}
								if ((CurrentFileName[outindex] != '\0') || (outindex+agrep_outpointer+1>=agrep_outlen)) {
									OUTPUT_OVERFLOW;
									/*
									if (text == -1) {
										memcpy(buffer+end-D_length, tempbuf, D_length+1);
									}
									*/
									free_buf(text, buffer);
									return -1;
								}
								else agrep_outbuffer[agrep_outpointer+outindex++] = '\n';
								agrep_outpointer += outindex;
							}
							/*
							if (text == -1) {
								memcpy(buffer+end-D_length, tempbuf, D_length+1);
							}
							*/
							free_buf(text, buffer);
							NEW_FILE = OFF;
							return 0;  
						}
						printout_end = i - D_length - 1 ; 
						if ((text != -1) && !(lasti >= Max_record + l - 1)) {
							if (-1 == output(buffer, lasti, printout_end, j)) {free_buf(text, buffer); return -1;}
						}
						else if ((text == -1) && !(lasti >= l)) {
							if (-1 == output(buffer, lasti, printout_end, j)) {free_buf(text, buffer); return -1;}
						}
						if (((LIMITOUTPUT > 0) && (LIMITOUTPUT <= num_of_matched)) ||
						    ((LIMITPERFILE > 0) && (LIMITPERFILE <= num_of_matched - prev_num_of_matched))) {
							free_buf(text, buffer);
							return 0;	/* done */
						}
					}
					lasti = i - D_length; /* point to starting position of D_pat */
					TRUNCATE = OFF;
					for(k=0; k<= D; k++) {
						B[k] = Init[0];
					}
					r1 = B[0] & Init1;
					A[0] = (((B[0]>>1) & CMask) | r1) & D_Mask;
					for(k=1; k<= D; k++) {
						r1 = Init1 & B[k];
						r2 = B[k-1] | (((A[k-1] | B[k-1])>>1)&r_NO_ERR);
						A[k] = (((B[k]>>1)&CMask) | r1 | r2) ;
					}
					A0 = A[0]; 
					B0 = B[0]; 
					A1 = A[1]; 
					B1 = B[1]; 
					A2 = A[2]; 
					B2 = B[2];
					A3 = A[3]; 
					B3 = B[3]; 
					A4 = A[4]; 
					B4 = B[4];
					if (DELIMITER) CurrentByteOffset += 1*D_length;
					else CurrentByteOffset += 1*1;
				}
				c = buffer[i];
				CMask = Mask[c];
				r1 = r_Init1 & A0;
				B0 = ((A0 >> 1 ) & CMask) | r1;
				/* printf("Mask = %o, B0 = %on", CMask, B0); */
				r1 = r_Init1 & A1;
				r2 =  A0 | (((A0 | B0) >> 1) & r_NO_ERR); 
				B1 = ((A1 >>1 ) & CMask) | r2 | r1 ;  
				if(D == 1) goto Nextchar1mem;
				r1 = r_Init1 & A2;
				r2 =  A1 | (((A1 | B1) >> 1) & r_NO_ERR); 
				B2 = ((A2 >>1 ) & CMask) | r2 | r1 ;  
				if(D == 2) goto Nextchar1mem;
				r1 = r_Init1 & A3;
				r2 =  A2 | (((A2 | B2) >> 1) & r_NO_ERR); 
				B3 = ((A3 >>1 ) & CMask) | r2 | r1 ;  
				if(D == 3) goto Nextchar1mem;
				r1 = r_Init1 & A4;
				r2 =  A3 | (((A3 | B3) >> 1) & r_NO_ERR); 
				B4 = ((A4 >>1 ) & CMask) | r2 | r1 ;  
				if(D == 4) goto Nextchar1mem;
Nextchar1mem: 
				i=i+1;
				CurrentByteOffset ++;
				if(B0 & endpos) {
					j++;  
					if (DELIMITER) CurrentByteOffset -= D_length;
					else CurrentByteOffset -= 1;
					r1 = B0;
					if ( D == 1) r1 = B1;
					if ( D == 2) r1 = B2;
					if ( D == 3) r1 = B3;
					if ( D == 4) r1 = B4;
					if(((AND == 1) && ((r1 & endposition) == endposition)) || ((AND == 0) && (r1 & endposition)) ^ INVERSE )
					{ 
						if(FILENAMEONLY && (NEW_FILE || !POST_FILTER)) {
							num_of_matched++;
							free_buf(text, buffer);
							if (agrep_finalfp != NULL) 
								fprintf(agrep_finalfp, "%s\n", CurrentFileName);
							else {
								int outindex;
								for(outindex=0; (outindex+agrep_outpointer<agrep_outlen) && 
										(CurrentFileName[outindex] != '\0'); outindex++) {
									agrep_outbuffer[agrep_outpointer+outindex] = CurrentFileName[outindex];
								}
								if ((CurrentFileName[outindex] != '\0') || (outindex+agrep_outpointer+1>=agrep_outlen)) {
									OUTPUT_OVERFLOW;
									/*
									if (text == -1) {
										memcpy(buffer+end-D_length, tempbuf, D_length+1);
									}
									*/
									free_buf(text, buffer);
									return -1;
								}
								else agrep_outbuffer[agrep_outpointer+outindex++] = '\n';
								agrep_outpointer += outindex;
							}
							/*
							if (text == -1) {
								memcpy(buffer+end-D_length, tempbuf, D_length+1);
							}
							*/
							free_buf(text, buffer);
							NEW_FILE = OFF;
							return 0; 
						}
						printout_end = i - D_length - 1 ; 
						if((text != -1) && !(lasti >= Max_record + l - 1)) {
							if (-1 == output(buffer, lasti, printout_end, j)) {free_buf(text, buffer); return -1;}
						}
						else if ((text == -1) && !(lasti >= l)) {
							if (-1 == output(buffer, lasti, printout_end, j)) {free_buf(text, buffer); return -1;}
						}
						if (((LIMITOUTPUT > 0) && (LIMITOUTPUT <= num_of_matched)) ||
						    ((LIMITPERFILE > 0) && (LIMITPERFILE <= num_of_matched - prev_num_of_matched))) {
							free_buf(text, buffer);
							return 0;	/* done */
						}
					}
					lasti = i - D_length ;
					TRUNCATE = OFF;
					for(k=0; k<= D; k++) {
						A[k] = Init[0];
					}
					r1 = A[0] & Init1; 
					B[0] = (((A[0]>>1)&CMask) | r1) & D_Mask;
					for(k=1; k<= D; k++) {
						r1 = Init1 & A[k];
						r2 = A[k-1] | (((A[k-1] | B[k-1])>>1)&r_NO_ERR);
						B[k] = (((A[k]>>1)&CMask) | r1 | r2) ;
					}
					A0 = A[0]; 
					B0 = B[0]; 
					A1 = A[1]; 
					B1 = B[1]; 
					A2 = A[2]; 
					B2 = B[2];
					A3 = A[3]; 
					B3 = B[3]; 
					A4 = A[4]; 
					B4 = B[4];
					if (DELIMITER) CurrentByteOffset += 1*D_length;
					else CurrentByteOffset += 1*1;
				}
			}

		/*
		if (DELIMITER) {
			memcpy(buffer+end, tempbuf, D_length+1);
			free(tempbuf);
		}
		*/
		return 0;
	}
#endif	/*AGREP_POINTER*/
}

int
asearch0(old_D_pat, text, D)
CHAR old_D_pat[]; 
int text; 
register unsigned D;
{
	register unsigned i, c, r1, r2, CMask, r_NO_ERR, r_Init1,  end, endpos; 
	unsigned A[MaxError+2], B[MaxError+2];
	unsigned D_Mask;
	int D_length, FIRSTROUND, ResidueSize, lasti, l, k, j=0;
	int printout_end;
	CHAR *buffer;
	/* CHAR *tempbuf = NULL;*/	/* used only when text == -1 */

	D_length = strlen(old_D_pat);
	D_Mask = D_endpos;
	for ( i=1; i<D_length; i++) D_Mask = (D_Mask<<1) | D_Mask;
	D_Mask = ~D_Mask;

	r_Init1 = Init1; /* put Init1 in register */
	r_NO_ERR = NO_ERR_MASK; /* put NO_ERR_MASK in register */
	endpos = D_endpos;    
	FIRSTROUND = ON;
	for(k=0; k<=D; k++) A[k] = B[k] = Init[0];

#if	AGREP_POINTER
	if (text != -1) {
#endif	/*AGREP_POINTER*/
		lasti = Max_record;
		alloc_buf(text, &buffer, BlockSize+Max_record+1);
		buffer[Max_record-1] = '\n';
		while ((l = fill_buf(text, buffer + Max_record, BlockSize)) > 0)
		{
			i = Max_record; 
			end = Max_record + l ;
			if (FIRSTROUND) { 
				i = Max_record - 1;
				FIRSTROUND = OFF; 
			}
			if (l < BlockSize) {
				strncpy(buffer+end, old_D_pat, D_length);
				buffer[end+D_length] = '\0';
				end = end + D_length; 
			}

			/* ASEARCH0_PROCESS: the while-loop below */
			while (i < end )
			{
				c = buffer[i++];
				CurrentByteOffset ++;
				CMask = Mask[c];
				r1 = B[0] & r_Init1;
				A[0] = ((((B[0] >> 1)) & CMask) | r1 ) ;
				for(k=1; k<=D; k++) {
					r1 = r_Init1 & B[k];
					r2 = B[k-1] | (((A[k-1]|B[k-1])>>1) & r_NO_ERR);
					A[k] = ((B[k] >> 1) & CMask) | r2 | r1;
				}
				if(A[0] & endpos) {
					j++;  
					if (DELIMITER) CurrentByteOffset -= D_length;
					else CurrentByteOffset -= 1;
					r1 = A[D];
					if(((AND == 1) && ((r1 & endposition) == endposition)) || ((AND == 0) && (r1 & endposition)) ^ INVERSE )
					{    
						if(FILENAMEONLY && (NEW_FILE || !POST_FILTER)) {
							num_of_matched++;
							if (agrep_finalfp != NULL) 
								fprintf(agrep_finalfp, "%s\n", CurrentFileName);
							else {
								int outindex;
								for(outindex=0; (outindex+agrep_outpointer<agrep_outlen) && 
										(CurrentFileName[outindex] != '\0'); outindex++) {
									agrep_outbuffer[agrep_outpointer+outindex] = CurrentFileName[outindex];
								}
								if ((CurrentFileName[outindex] != '\0') || (outindex+agrep_outpointer+1>=agrep_outlen)) {
									OUTPUT_OVERFLOW;
									/*
									if (text == -1) {
										memcpy(buffer+end-D_length, tempbuf, D_length+1);
									}
									*/
									free_buf(text, buffer);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人av网站在线| 夜夜爽夜夜爽精品视频| 蜜桃av噜噜一区| 91精品国产欧美日韩| 日韩av中文字幕一区二区| 欧美一区日本一区韩国一区| 日日摸夜夜添夜夜添精品视频| 欧美高清性hdvideosex| 美女被吸乳得到大胸91| 精品福利二区三区| 不卡一区二区三区四区| 亚洲午夜精品网| 欧美一区二区三区电影| 国产精品中文字幕欧美| 亚洲欧美自拍偷拍色图| 欧美性色aⅴ视频一区日韩精品| 亚洲乱码日产精品bd| 欧美一级艳片视频免费观看| 国产精品一二三四五| 亚洲欧美日韩一区二区| 欧美一区二区视频网站| 国产精品影视网| 亚洲码国产岛国毛片在线| 51精品久久久久久久蜜臀| 国产做a爰片久久毛片 | 国产精品视频一二三区| 91片黄在线观看| 青青草国产精品97视觉盛宴| 国产视频一区在线播放| 欧美日韩中文精品| 韩国三级中文字幕hd久久精品| 国产精品久久久久久久久免费相片| 日本韩国欧美一区| 国内外精品视频| 一区二区在线电影| 精品国产一区二区精华| 在线欧美日韩精品| 国产综合久久久久影院| 亚洲精品福利视频网站| 2023国产精华国产精品| 91成人免费在线| 国产激情一区二区三区| 亚洲a一区二区| 亚洲国产激情av| 91精品欧美综合在线观看最新| 成人午夜激情视频| 青青草97国产精品免费观看| 国产精品三级av| 日韩欧美成人午夜| 欧美吻胸吃奶大尺度电影| 国产九色精品成人porny | 精品少妇一区二区三区视频免付费| 91玉足脚交白嫩脚丫在线播放| 久久69国产一区二区蜜臀| 一区二区三区免费看视频| 国产亚洲欧美一区在线观看| 日韩一区二区免费视频| 欧美中文字幕一区| 成人免费观看视频| 国产一区欧美二区| 老色鬼精品视频在线观看播放| 亚洲中国最大av网站| 亚洲欧美综合色| 欧美国产精品v| 久久久久国产免费免费| 日韩精品一区二区三区视频播放| 欧美少妇bbb| 日本精品免费观看高清观看| 91在线码无精品| aaa欧美日韩| 91视频免费观看| 不卡av在线网| 白白色 亚洲乱淫| 国产成人av电影在线播放| 狠狠色狠狠色综合系列| 美国十次了思思久久精品导航| 日日欢夜夜爽一区| 天堂精品中文字幕在线| 亚洲成人av在线电影| 亚洲成人动漫精品| 亚洲chinese男男1069| 亚洲成人777| 日韩av网站免费在线| 日日夜夜免费精品视频| 青草av.久久免费一区| 美腿丝袜亚洲色图| 精彩视频一区二区| 国产精品自在欧美一区| 成人激情小说乱人伦| 北岛玲一区二区三区四区| 91美女在线观看| 在线免费观看日韩欧美| 欧美精品在线一区二区三区| 91精品国产综合久久香蕉麻豆| 欧美日韩成人激情| 日韩欧美成人激情| 国产欧美一区二区精品性色| 国产精品久久久久桃色tv| 亚洲天堂av老司机| 亚洲午夜激情av| 蜜桃在线一区二区三区| 狠狠色丁香九九婷婷综合五月| 国产一区不卡视频| 99久久久精品| 欧美另类一区二区三区| 精品国产一区二区在线观看| 国产午夜亚洲精品不卡| 日韩理论片网站| 奇米888四色在线精品| 国产美女在线观看一区| 不卡电影一区二区三区| 欧美精品欧美精品系列| 国产午夜精品久久久久久免费视 | 欧美绝品在线观看成人午夜影视| 欧美一区二区三区男人的天堂| 欧美精品一区二区高清在线观看| 国产视频视频一区| 亚洲一区二区三区四区在线免费观看 | 亚洲国产欧美在线| 久久爱www久久做| av色综合久久天堂av综合| 欧美肥妇free| 中文字幕一区在线观看| 视频一区免费在线观看| 成人激情免费电影网址| 日韩视频一区二区三区在线播放| 中文字幕不卡在线| 蜜桃av噜噜一区| 91高清在线观看| 久久精品免视看| 日本不卡视频一二三区| av中文字幕在线不卡| 日韩欧美亚洲一区二区| 亚洲精品国产精华液| 国产一区二区不卡| 在线播放91灌醉迷j高跟美女 | 美女视频一区在线观看| 一本一道综合狠狠老| 久久久久久日产精品| 亚洲永久精品大片| 成人小视频在线| 精品国产污污免费网站入口| 一区二区在线观看免费 | 国产精品夫妻自拍| 韩日av一区二区| 91精品久久久久久久久99蜜臂| 亚洲黄色av一区| 不卡区在线中文字幕| 国产视频一区在线观看| 激情久久久久久久久久久久久久久久| 欧美日韩午夜在线视频| 亚洲美女偷拍久久| 97成人超碰视| 国产日产亚洲精品系列| 国产中文字幕精品| 日韩一区二区不卡| 天堂一区二区在线| 欧美精品1区2区3区| 亚洲黄色av一区| 日本高清视频一区二区| 亚洲天堂a在线| 91亚洲永久精品| 亚洲精品日韩一| 99re热视频这里只精品| 国产精品久久久久一区 | 国模冰冰炮一区二区| 欧美精品一区二区三区蜜臀| 激情文学综合插| 久久午夜免费电影| 国产一区中文字幕| 久久免费午夜影院| 国产黄人亚洲片| 欧美国产日本视频| a美女胸又www黄视频久久| 亚洲视频在线一区| 91国模大尺度私拍在线视频| 一区二区三区欧美日| 欧美日韩色一区| 日韩av二区在线播放| 欧美成人午夜电影| 国产精品18久久久久久vr| 欧美国产激情一区二区三区蜜月| 国产91色综合久久免费分享| 国产丝袜美腿一区二区三区| av一区二区久久| 亚洲高清免费视频| 欧美一级夜夜爽| 国产精品一区二区果冻传媒| 亚洲国产成人私人影院tom | 欧美午夜免费电影| 日韩电影在线一区二区三区| 精品久久久三级丝袜| 国产成人av电影在线观看| 亚洲精品伦理在线| 欧美一级视频精品观看| 国产成人亚洲综合a∨婷婷图片| 中文字幕中文字幕一区| 欧美日韩免费高清一区色橹橹 | 欧美日韩国产在线观看| 国产专区欧美精品|