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

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

?? main.c

?? agrep
?? C
?? 第 1 頁 / 共 3 頁
字號:
		  CONSTANT = ON;		  argv++;		  strcat(Pattern, argv[0]);		  if(argc > 1 && argv[1][0] == '-') {			fprintf(stderr, "%s: -k should be the last option in the command\n", Progname);			exit(2);		  }		  break;       case 'l' : FILENAMEONLY = ON;                  break;       case 'n' : LINENUM = ON;  /* output prefixed by line no*/                  break;       case 'v' : INVERSE = ON;  /* output no-matched lines */                  break;       case 't' : OUTTAIL = ON;  /* output from tail of delimiter */                  break;       case 'B' : BESTMATCH = ON;                  break;       case 'w' : WORDBOUND = ON;/* match to words */		  if(WHOLELINE) {			fprintf(stderr, "%s: illegal option combination\n", Progname);			exit(2);		  }                  break;       case 'y' : NOPROMPT = ON;		  break;       case 'I' : I = atoi(argv[0]+2);  /* Insertion Cost */	          JUMP = ON;                  break;       case 'S' : S = atoi(argv[0]+2);  /* Substitution Cost */                  JUMP = ON;                  break;       case 'D' : DD = atoi(argv[0]+2); /* Deletion Cost */                  JUMP = ON;                  break;       case 'G' : FILEOUT = ON; 		  COUNT = ON;		  break;       default  : if (isdigit(c)) {		    APPROX = ON;                    D = atoi(argv[0]+1);                    if (D > MaxError) {                      fprintf(stderr,"%s: the maximum number of errors is %d \n", Progname, MaxError);                      exit(2);                    }                  } else {                    fprintf(stderr, "%s: illegal option  -%c\n",Progname, c);		    usage();                  }       } /* switch(c) */  } /* while (--argc > 0 && (*++argv)[0] == '-') */  if (FILENAMEONLY && NOFILENAME) {    fprintf(stderr, "%s: -h and -l options are mutually exclusive\n",Progname);  }  if (COUNT && (FILENAMEONLY || NOFILENAME)) {      FILENAMEONLY = OFF;       if(!FILEOUT) NOFILENAME = OFF;  }  if (!(PAT_FILE) && Pattern[0] == '\0') { /* Pattern not set with -e option */    if (argc == 0) usage();    strcpy(Pattern, *argv);     argc--;    argv++;  }  Numfiles = 0;    fd = 3; /* make sure it's not 0 */  if (argc == 0)  /* check Pattern against stdin */    fd = 0;  else {    if (!(Textfiles = (CHAR **)malloc(argc * sizeof(CHAR *) ))) {      fprintf(stderr, "%s: malloc failure (you probably don't have enough memory)\n", Progname);      exit(2);    }    while (argc--)  { /* one or more filenames on command line -- put                          the valid filenames in a array of strings */    /*      if ((filetype = check_file(*argv)) != ISASCIIFILE) {	if(filetype == NOSUCHFILE) fprintf(stderr,"%s: %s: no such file or directory\n",Progname,*argv);        argv++;*/            if ((filetype = check_file(*argv)) == NOSUCHFILE) {	if(filetype == NOSUCHFILE) fprintf(stderr,"%s: %s: no such file or directory\n",Progname,*argv);        argv++;      } else { /* file is ascii*/        if (!(Textfiles[Numfiles] = (CHAR *)malloc((strlen(*argv)+1)))) {          fprintf(stderr, "%s: malloc failure (you probably don't have enough memory)\n", Progname);          exit(2);        }        strcpy(Textfiles[Numfiles++], *argv++);	   } /* else */     } /* while (argc--) */  } /* else */  checksg(Pattern, D);       /* check if the pattern is simple */  strcpy(OldPattern, Pattern);  if (SGREP == 0) {      preprocess(D_pattern, Pattern);      strcpy(old_D_pat, D_pattern);      M = maskgen(Pattern, D);  }  else M = strlen(OldPattern);  if (PAT_FILE)  prepf(fp);  if (Numfiles > 1) FNAME = ON;  if (NOFILENAME) FNAME = 0;  num_of_matched = 0;  compat(); /* check compatibility between options */  if (fd == 0) {    if(FILENAMEONLY) {       fprintf(stderr, "%s: -l option is not compatible with standard input\n", Progname);       exit(2);      }    if(PAT_FILE) mgrep(fd);    else {    	if(SGREP) sgrep(OldPattern, strlen(OldPattern), fd, D);   	else      bitap(old_D_pat, Pattern, fd, M, D);    }    if (COUNT) {	if(INVERSE && PAT_FILE) printf("%d\n", total_line-num_of_matched);	else printf("%d\n", num_of_matched);    }  }   else {    for (i = 0; i < Numfiles; i++, close(fd), num_of_matched = 0) {      	strcpy(CurrentFileName, Textfiles[i]);      	if ((fd = open(Textfiles[i], 0)) <= 0) {            fprintf(stderr, "%s: can't open file %s\n",Progname, Textfiles[i]);      	} 	else { 	     	if(PAT_FILE) mgrep(fd);	     	else {             		if(SGREP) sgrep(OldPattern, strlen(OldPattern), fd, D);             		else      bitap(old_D_pat, Pattern, fd, M, D);	        }        	if (num_of_matched) NOMATCH = OFF;        	if (COUNT && !FILEOUT) {			if(INVERSE && PAT_FILE) { 		    		if(FNAME) printf("%s: %d\n", CurrentFileName, total_line - num_of_matched);				else printf("%d\n", total_line - num_of_matched);			}			else { 		    		if(FNAME) printf("%s: %d\n", CurrentFileName, num_of_matched);				else printf("%d\n", num_of_matched);			}        	}  /* if COUNT */		if(FILEOUT && num_of_matched) {			file_out(CurrentFileName);		}      	} /* else */    }  /* for i < Numfiles */    if(NOMATCH && BESTMATCH) {	if(WORDBOUND || WHOLELINE || LINENUM || INVERSE) { 		SGREP = 0;	      		preprocess(D_pattern, Pattern);      		strcpy(old_D_pat, D_pattern);      		M = maskgen(Pattern, D);	}	COUNT=ON; D=1;	while(D<M && D<=MaxError && num_of_matched == 0) {    		for (i = 0; i < Numfiles; i++, close(fd)) {      			strcpy(CurrentFileName, Textfiles[i]);      			if ((fd = open(Textfiles[i], 0)) > 0) {	     			if(PAT_FILE) mgrep(fd);	     			else {             		    		if(SGREP) sgrep(OldPattern,strlen(OldPattern),fd,D);             		    		else bitap(old_D_pat,Pattern,fd,M,D);      				}			}    		}  /* for i < Numfiles */		D++;	} /* while */	if(num_of_matched > 0) {		D--; COUNT = 0;		if(NOPROMPT) goto GO_AHEAD;		if(D==1) fprintf(stderr, "best match has 1 error, ");		else fprintf(stderr, "best match has %d errors, ", D);		fflush(stderr);		if(num_of_matched == 1) fprintf(stderr,"there is 1 match, output it? (y/n)");		else fprintf(stderr,"there are %d matches, output them? (y/n)", num_of_matched);		scanf("%c",&c);		if(c != 'y') goto CONT;GO_AHEAD:    		for (i = 0; i < Numfiles; i++, close(fd)) {      			strcpy(CurrentFileName, Textfiles[i]);      			if ((fd = open(Textfiles[i], 0)) > 0) {	     			if(PAT_FILE) mgrep(fd);	     			else {             		    		if(SGREP) sgrep(OldPattern,strlen(OldPattern),fd,D);             		    		else bitap(old_D_pat,Pattern,fd,M,D);				}      			}    		}  /* for i < Numfiles */		NOMATCH = 0;	}   } }CONT: if(EATFIRST) {      printf("\n");      EATFIRST = OFF; } if(num_of_matched) NOMATCH = OFF; if(NOMATCH) exit(1); exit(0);} /* end of main() */	   file_out(fname)char *fname;{int num_read;int fd;int i, len;CHAR buf[4097];	if(FNAME) {		len = strlen(fname);		putchar('\n');		for(i=0; i< len; i++) putchar(':');		putchar('\n');		printf("%s\n", CurrentFileName);		len = strlen(fname);		for(i=0; i< len; i++) putchar(':');		putchar('\n');		fflush(stdout);	}	fd = open(fname, 0);	while((num_read = read(fd, buf, 4096)) > 0) 		write(1, buf, num_read);}usage(){    	fprintf(stderr, "usage: %s [-#cdehiklnpstvwxBDGIS] [-f patternfile] pattern [files]\n", Progname);  	printf("\n");		fprintf(stderr, "summary of frequently used options:\n");	fprintf(stderr, "-#: find matches with at most # errors\n");	fprintf(stderr, "-c: output the number of matched records\n");	fprintf(stderr, "-d: define record delimiter\n");	fprintf(stderr, "-h: do not output file names\n");	fprintf(stderr, "-i: case-insensitive search, e.g., 'a' = 'A'\n");	fprintf(stderr, "-l: output the names of files that contain a match\n");	fprintf(stderr, "-n: output record prefixed by record number\n");	fprintf(stderr, "-v: output those records containing no matches\n");	fprintf(stderr, "-w: pattern has to match as a word, e.g., 'win' will not match 'wind'\n");	fprintf(stderr, "-B: best match mode. find the closest matches to the pattern\n"); 	fprintf(stderr, "-G: output the files that contain a match\n"); 	printf("\n");	    	exit(2);}checksg(Pattern, D) CHAR *Pattern; int D;{                            char c;  int i, m;  m = strlen(Pattern);  if(!(PAT_FILE) && m <= D) {      fprintf(stderr, "%s: size of pattern must be greater than number of errors\n", Progname);      exit(2);  }  SIMPLEPATTERN = ON;  for (i=0; i < m; i++)   {      switch(Pattern[i])      {         case ';' : SIMPLEPATTERN = OFF; break;         case ',' : SIMPLEPATTERN = OFF; break;         case '.' : SIMPLEPATTERN = OFF; break;         case '*' : SIMPLEPATTERN = OFF; break;         case '-' : SIMPLEPATTERN = OFF; break;         case '[' : SIMPLEPATTERN = OFF; break;         case ']' : SIMPLEPATTERN = OFF; break;         case '(' : SIMPLEPATTERN = OFF; break;         case ')' : SIMPLEPATTERN = OFF; break;         case '<' : SIMPLEPATTERN = OFF; break;         case '>' : SIMPLEPATTERN = OFF; break;         case '^' : if(D > 0) SIMPLEPATTERN = OFF; 		    break;         case '$' : if(D > 0) SIMPLEPATTERN = OFF; 		    break;         case '|' : SIMPLEPATTERN = OFF; break;         case '#' : SIMPLEPATTERN = OFF; break;         case '\\' : SIMPLEPATTERN = OFF; break;         default  : break;      }  }  if (CONSTANT) SIMPLEPATTERN = ON;  if (SIMPLEPATTERN == OFF) return;  if (NOUPPER && D) return;       if (JUMP == ON) return;  if (I == 0) return;  if (LINENUM) return;  if (DELIMITER) return;     if (INVERSE) return;  if (WORDBOUND && D > 0) return;    if (WHOLELINE && D > 0) return;    if (SILENT) return;     /* REMINDER: to be removed */  SGREP = ON;  if(m >= 16) DNA = ON;  for(i=0; i<m; i++) {	c = Pattern[i];	if(c == 'a' || c == 'c' || c == 't' || c == 'g' ) ;	else DNA = OFF;  }  return;}output (buffer, i1, i2, j)  register CHAR *buffer; int i1, i2, j;{register CHAR *bp, *outend;	if(i1 > i2) return;        num_of_matched++;        if(COUNT)  return;        if(SILENT) return;	if(OUTTAIL) {              i1 = i1 + D_length;              i2 = i2 + D_length;        }        if(DELIMITER) j = j+1;        if(FIRSTOUTPUT) {           if (buffer[i1] == '\n')  {               i1++;               EATFIRST = ON;           }           FIRSTOUTPUT = 0;        }        if(TRUNCATE) {           fprintf(stderr, "WARNING!!!  some lines have been truncated in output record #%d\n", num_of_matched-1);        }        while(buffer[i1] == '\n' && i1 <= i2) {	   printf("\n");           i1++;        }        if(FNAME == ON) printf("%s: ", CurrentFileName);        if(LINENUM) printf("%d: ", j-1); 	bp = buffer + i1;	outend = buffer + i2;	while(bp <= outend) putchar(*bp++);}/* end of main.c */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产午夜精品久久久久久久| 欧美日韩精品久久久| 亚洲精品免费在线| 日韩午夜小视频| 色一区在线观看| 韩国三级电影一区二区| 亚洲精品国产一区二区精华液| 日韩一区二区三区四区| 91影视在线播放| 国产高清成人在线| 免费看欧美女人艹b| 亚洲精品免费播放| 欧美激情中文字幕| 日韩欧美一二区| 欧美日韩精品三区| 日本高清无吗v一区| 成人免费高清在线| 国产精品主播直播| 久久精品国产精品亚洲精品| 亚洲va中文字幕| 亚洲精品免费电影| 亚洲欧美另类在线| 国产精品无人区| 国产亚洲一区字幕| 精品国产91久久久久久久妲己| 精品国产一区二区精华| 在线精品亚洲一区二区不卡| 成人av网在线| 国产成人自拍网| 国产一区二区三区四区在线观看| 欧美a级一区二区| 日韩精品色哟哟| 亚洲一区二区三区四区中文字幕| 国产精品短视频| 国产精品免费av| 欧美激情一区二区三区四区| 久久久国际精品| 久久久久久久久久久久久久久99 | 欧美日韩国产成人在线91| 99久精品国产| 99久精品国产| 99re热视频精品| 91麻豆视频网站| 色激情天天射综合网| 色老汉一区二区三区| 91福利国产成人精品照片| 91丝袜国产在线播放| 色欲综合视频天天天| 91污片在线观看| 欧美在线免费观看视频| 欧美日韩一区二区三区四区五区| 欧美性色黄大片| 欧美一二三四区在线| 欧美一区二区视频在线观看| 91精品国产综合久久香蕉的特点| 91麻豆精品国产91久久久使用方法| 欧美久久一二三四区| 日韩欧美三级在线| 久久久国产一区二区三区四区小说| 久久久国产午夜精品| 亚洲欧美自拍偷拍| 午夜视频久久久久久| 蜜桃视频一区二区三区在线观看| 精品一区二区三区日韩| 成人午夜视频免费看| 91在线视频免费91| 欧美日韩美少妇| 精品欧美一区二区在线观看| 国产丝袜在线精品| 一区二区三区四区在线播放| 三级一区在线视频先锋 | 亚洲精品中文在线观看| 亚洲综合小说图片| 蜜桃av噜噜一区二区三区小说| 狠狠色伊人亚洲综合成人| 成人动漫一区二区在线| 欧美丝袜丝交足nylons| xfplay精品久久| 亚洲日本在线视频观看| 日韩av午夜在线观看| 高清国产午夜精品久久久久久| 色综合天天综合网国产成人综合天| 欧美精品在线观看一区二区| 久久久不卡网国产精品一区| 亚洲人一二三区| 麻豆精品精品国产自在97香蕉 | 国产成人午夜精品影院观看视频| 白白色 亚洲乱淫| 制服丝袜在线91| 国产精品视频在线看| 亚洲福利电影网| 国产精品88888| 欧美日韩一区不卡| 国产精品毛片无遮挡高清| 亚洲第四色夜色| 成人看片黄a免费看在线| 欧美老年两性高潮| 中文字幕一区二区三区在线不卡 | 亚洲国产精品麻豆| 高清在线成人网| 欧美日韩精品电影| 综合久久久久综合| 激情五月婷婷综合网| 色婷婷一区二区| 国产免费成人在线视频| 青青草一区二区三区| 日本精品一区二区三区高清 | 亚洲国产精品久久艾草纯爱| 国产高清在线精品| 日韩小视频在线观看专区| 亚洲激情校园春色| 成人美女视频在线看| 欧美videos大乳护士334| 夜夜操天天操亚洲| av成人动漫在线观看| 国产日韩欧美制服另类| 老司机免费视频一区二区| 欧美天天综合网| 亚洲一区在线看| 91麻豆国产福利精品| 国产精品美女久久久久av爽李琼| 国内久久婷婷综合| 日韩一二三四区| 婷婷久久综合九色综合绿巨人| 一本久久a久久精品亚洲| 中文字幕中文字幕在线一区| 国产一区二区三区四| 精品卡一卡二卡三卡四在线| 日本欧美一区二区在线观看| 欧美色倩网站大全免费| 亚洲在线成人精品| 在线一区二区三区做爰视频网站| 国产精品久久久久一区| 不卡av在线免费观看| 国产精品视频观看| 成人精品小蝌蚪| 国产精品国产精品国产专区不蜜| 国产高清精品网站| 国产精品国产三级国产| 97se狠狠狠综合亚洲狠狠| 国产精品动漫网站| 91亚洲精华国产精华精华液| 中文字幕日韩欧美一区二区三区| 成人一道本在线| 国产精品美女一区二区在线观看| 高清成人免费视频| 国产精品乱人伦中文| 不卡电影一区二区三区| 亚洲精品福利视频网站| 欧美视频一区二区三区四区| 亚洲va韩国va欧美va精品| 666欧美在线视频| 美腿丝袜亚洲综合| 久久久久99精品一区| 99精品1区2区| 亚洲欧美日韩电影| 5566中文字幕一区二区电影| 日本免费在线视频不卡一不卡二| 欧美大片日本大片免费观看| 国内精品伊人久久久久影院对白| 久久伊人中文字幕| 91网站视频在线观看| 亚洲一区视频在线观看视频| 欧美精品黑人性xxxx| 久草热8精品视频在线观看| 国产免费久久精品| 欧美三级韩国三级日本三斤| 毛片不卡一区二区| 亚洲国产精品传媒在线观看| 色狠狠综合天天综合综合| 日本vs亚洲vs韩国一区三区二区 | 亚洲丝袜精品丝袜在线| 欧美日韩一区二区电影| 国产精品123| 亚洲一区二区三区自拍| 精品国产免费视频| 91亚洲精品久久久蜜桃网站 | 日韩高清一区二区| 国产亚洲欧美中文| 欧美亚洲国产一区在线观看网站| 麻豆精品国产传媒mv男同| 国产精品美女久久久久久久| 欧美日本在线观看| 成人午夜精品一区二区三区| 亚洲图片自拍偷拍| 久久精品夜色噜噜亚洲a∨| 欧美性视频一区二区三区| 激情五月激情综合网| 亚洲一二三四在线| 久久久亚洲国产美女国产盗摄| 色女孩综合影院| 国产一区二区福利视频| 亚洲一区二区三区中文字幕| 欧美国产日韩一二三区| 3d成人h动漫网站入口| 91一区在线观看| 风间由美一区二区三区在线观看 | 国产成人精品亚洲午夜麻豆| 亚洲一区二区免费视频| 国产欧美日韩另类视频免费观看|