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

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

?? rpg.c

?? speech signal process tools
?? C
?? 第 1 頁 / 共 2 頁
字號:
#include <util/utillib.h>#ifdef __STDC__# include <stdarg.h>#else# include <varargs.h>#endif#include <util/chars.h>#include <util/memory.h>#include <util/order.h>#include <util/macros.h>#include <util/rpg.h>#define MAX_COL   40#define MAX_ROW   100#define MAX_JUST  40#define MAX_SEP   10#define MAX_VALUE_LEN   500#define LOCKED		'l'#define UNLOCKED	'u'static int PAGE_WIDTH=80;static int CENTER_PAGE=0;static int static_rpt_dbg=0;static int static_parse_dbg=0;typedef struct column_justification_struct{    char format_str[40];    int min_just_width;    int num_col;    int col_just[MAX_COL];    int col_lock[MAX_COL];    int num_locked;    char col_inter_space[MAX_COL];} COLUMN_JUST;typedef struct report_justification_struct{    int width;    int tot_num_col;    int num_col_just;    COLUMN_JUST col[MAX_COL];    int tot_num_row;    char before_row_separations[MAX_ROW+1][MAX_SEP];    char after_row_separations[MAX_ROW+1][MAX_SEP];    int row_just[MAX_ROW];    char cell_values[MAX_COL][MAX_ROW][MAX_VALUE_LEN];    /*   These variables are for column sizing information */    int max_col_sizes[MAX_COL][MAX_COL];  /* this is dependent on the number of columns defined in the justification */} REPORT_JUST;static REPORT_JUST report_just;int char_in_set(char chr, char *set){    while (*set != '\0'){	printf("char in set %c -> %c\n",chr,*set);	if (chr == *set)	    return(TRUE);	set++;    }    return(FALSE);}void Desc_set_parse_verbose(int dbg){    static_parse_dbg = dbg;}void Desc_set_report_verbose(int dbg){    static_rpt_dbg = dbg;}void Desc_erase(void){    int r, c;    report_just.width = 80;    report_just.tot_num_col = 0;    report_just.num_col_just = 0;    report_just.tot_num_row = 0;        for (r=0 ; r<MAX_ROW; r++){	report_just.before_row_separations[r][0] = '\0';		report_just.after_row_separations[r][0] = '\0';	    }    for (c=0; c<MAX_COL; c++)	report_just.col[c].num_col = 0;}void Desc_set_page_center(int width){    PAGE_WIDTH = width;    CENTER_PAGE = 1;}int Desc_set_justification(char *just_str){     char *p;    int j, col=0;    for (j=0; j<report_just.num_col_just; j++)	if (strcmp(just_str,report_just.col[j].format_str) == 0)	    return(j);    if (j == MAX_JUST)	return(-1);    strcpy(report_just.col[j].format_str,just_str);    for (p=just_str; *p!='\0' && *p!=':'; ){	if (col >= MAX_COL){	    fprintf(stderr,"Error: too many columns defined > %d\n",MAX_COL);	    exit(-1);	}	if ((*p == 'c') || (*p == 'C') || (*p == 'l') || (*p == 'L') ||	    (*p == 'r') || (*p == 'R') || (*p == 'n') || (*p == 'a')){	    report_just.col[j].col_just[col] = *p;	    report_just.col[j].col_lock[col] = UNLOCKED;	    report_just.col[j].num_col++;	    p++;	}	if (*p == '|'){		    report_just.col[j].col_inter_space[col] = '|';	    p++;	} else 	    report_just.col[j].col_inter_space[col] = ' ';	col++;    }    report_just.num_col_just++;    if (col > report_just.tot_num_col)	report_just.tot_num_col = col;    /* now check for the locking column information */    report_just.col[j].num_locked=0;    if (*p == ':')	p++;    for (col=0; *p!='\0' ; col++, p++){	if (col >= MAX_COL){	    fprintf(stderr,"Error: too many columns defined > %d\n",MAX_COL);	    exit(-1);	}	if ((*p == 'l')){	    report_just.col[j].col_lock[col] = LOCKED;	    report_just.col[j].num_locked++;	} else 	    report_just.col[j].col_lock[col] = UNLOCKED;    }    return(j);       }char *get_next_string_value(char **str, int width){    static char buf[150];    char *p;    int x=0;    p = *str;    for (x=0; (x < width) && (*p != '\0') && !(*p == '/' && *(p+1) == '/'); x++, p++)	buf[x] = *p;    if (*p == '/' && *(p+1) == '/')	p+=2;    else if (*p != '\0' && ((*(p+1) != ' ') || (*(p+1) != '/'))){	/* backup to a space */	while ((p != *str) && (*p != ' ')){	    p--;	    x--;	}	if (*p == ' ')	    p++;    }    buf[x] = '\0';    *str = p;    return(buf);}void print_spaces(int n, FILE *fp){    int x;    for (x=0; x<n; x++)	fprintf(fp," ");}#define SPACES_LEN   100void Desc_dump_report(int space_pad, FILE *fp){    int c, r, x, text_width, c2, j;    int hit[MAX_COL], column_width;    char *p;    char fmt_str1[200];     char *spaces="                                                                                                    ";    if (static_rpt_dbg){	int i,c,r,j,startc;	printf("Dump of description:   %d Total Columns\n", report_just.tot_num_col);	printf("Columns definitions:   \n");	for (j=0; j<report_just.num_col_just; j++){	    printf("    %2d: %2d Col:  ",j,report_just.col[j].num_col);	    for (i=0; i<report_just.col[j].num_col; i++)		printf("%c - '%c' ", report_just.col[j].col_just[i],		       report_just.col[j].col_inter_space[i]);	    printf("\n");	    printf("          Lock:  ");	    for (i=0; i<report_just.col[j].num_col; i++)		printf("%c       ", report_just.col[j].col_lock[i]);	    printf("\n");	}	printf("Report Width:          %d\n",report_just.width);	printf("Before Row Separations:       ");	for (r=0; r<report_just.tot_num_row; r++){	    char *p;	    for (p = report_just.before_row_separations[r]; (*p != '\0'); p++)		printf("  %d-'%c'",r,*p);	}	printf("\n");	printf("After Row Separations:       ");	for (r=0; r<report_just.tot_num_row; r++){	    char *p;	    for (p = report_just.after_row_separations[r]; (*p != '\0'); p++)		printf("  %d-'%c'",r,*p);	}	printf("\n");	printf("Table Row Values:      %d Rows\n",report_just.tot_num_row);	for (r=0; r<report_just.tot_num_row; r++){	    printf("   %d:  (Just %d)  ",r,report_just.row_just[r]);	    for (c=0; c<report_just.col[report_just.row_just[r]].num_col; c++){		printf("  C%d",c);		startc = c;		if ((c < report_just.tot_num_col-1) && (report_just.col[report_just.row_just[r]].col_just[c+1] == 'a')){		    printf("-");		    c++;		    while ((c < report_just.tot_num_col-1) && (report_just.col[report_just.row_just[r]].col_just[c] == 'a'))			c++;		    if (c !=  report_just.tot_num_col-1)			c--;		    printf("%d  ",c);		} else		    printf("  ");		printf("%s  ",report_just.cell_values[startc][r]);	    }	    printf("\n");	}    }    /* initialize the sizes to the minumum */    for (c=0 ; c<MAX_COL; c++)        for (c2=0 ; c2<MAX_COL; c2++)	    report_just.max_col_sizes[c][c2]=0;    /* first comput the max sizes for rows without spanning columns */    for (r=0; r<report_just.tot_num_row; r++){	for (c=0 ; c<report_just.col[report_just.row_just[r]].num_col; c++){	    if (((c < report_just.col[report_just.row_just[r]].num_col-1) && 		 (report_just.col[report_just.row_just[r]].col_just[c+1] != 'a')) ||		(c == report_just.col[report_just.row_just[r]].num_col-1)){		/* compute the max size of this column */		p = report_just.cell_values[c][r];		while (*p != '\0'){		    if (isupper(report_just.col[report_just.row_just[r]].col_just[c]))			for (x=0; (*p != '\0') && !(*p == ' ') && !(*p == '/' && *(p+1) == '/'); x++, p++)			    ;		    else			for (x=0; (*p != '\0') && !(*p == '/' && *(p+1) == '/'); x++, p++)			    ;		    if (*p == '/' && *(p+1) == '/')			p+=2;		    if (*p == ' ')			p++;		    if (x >  report_just.max_col_sizes[report_just.col[report_just.row_just[r]].num_col][c])			 report_just.max_col_sizes[report_just.col[report_just.row_just[r]].num_col][c] = x;		}	    }	}    }    if (static_rpt_dbg) {	for (j=0; j<MAX_COL; j++)	    hit[j]=0;	printf("   Maxlen Columns (1st Pass):  \n");	for (j=0 ; j<report_just.num_col_just; j++){	    if (!hit[report_just.col[j].num_col]){		printf("      %d Col: ",report_just.col[j].num_col);	    	    		for (c2=0; c2<report_just.col[j].num_col; c2++)		    printf("  %2d", report_just.max_col_sizes[report_just.col[j].num_col][c2]);		printf("\n"); 		hit[report_just.col[j].num_col]=1;	    }	}	printf("\n");    }    /* SECOND compute the max sizes for rows WITH spanning columns */    for (r=0; r<report_just.tot_num_row; r++){	for (c=0 ; c<report_just.col[report_just.row_just[r]].num_col; c++){	    /* if this isn't the last column and the next column is spanning */	    if ((c < report_just.col[report_just.row_just[r]].num_col-1) &&		(report_just.col[report_just.row_just[r]].col_just[c+1] == 'a')){		int siz=0, span_siz=0, startc, c2, add;		/* compute the max size of this column */		startc=c;		p = report_just.cell_values[c][r];		while (*p != '\0'){		    if (isupper(report_just.col[report_just.row_just[r]].col_just[c]))			for (x=0; (*p != '\0') && !(*p == ' ') && !(*p == '/' && *(p+1) == '/'); x++, p++)			    ;		    else			for (x=0; (*p != '\0') && !(*p == '/' && *(p+1) == '/'); x++, p++)			    ;		    if (*p == '/' && *(p+1) == '/')			p+=2;		    if (*p == ' ')			p++;		    if (x > siz)			 siz = x;		}		/* compute the size of the columns spanned over */		span_siz=0;		while ((c < report_just.col[report_just.row_just[r]].num_col-1) && (report_just.col[report_just.row_just[r]].col_just[c+1] == 'a')){		    span_siz +=  report_just.max_col_sizes[report_just.col[report_just.row_just[r]].num_col][c] + 			         ((c < report_just.col[report_just.row_just[r]].num_col-1) ? 1 : 0) + space_pad*2;    		    c++;		}		span_siz +=  report_just.max_col_sizes[report_just.col[report_just.row_just[r]].num_col][c];		/* if the siz > span_size THEN redistribute the characters over the N columns */		if (siz > span_siz) {		    int num_unlocked=0;		    for (c2=startc; c2<=c; c2++)			if (report_just.col[report_just.row_just[r]].col_lock[c2] == UNLOCKED)			    num_unlocked++;		    if (static_rpt_dbg) printf("   Redistribute for Row %d, columns %d-%d  Unlocked Col %d ",r,startc,c,num_unlocked);		    if (static_rpt_dbg) printf(" Span_Size %d  adjusting column size %d   Adding  ",span_siz,siz);		    if (num_unlocked == 0){			if (static_rpt_dbg) printf("   NONE\n");		    } else {			for (c2=startc; c2<=c; c2++){			    if (report_just.col[report_just.row_just[r]].col_lock[c2] == UNLOCKED){				if (c2 != c)				    add = (int)((float)(siz - span_siz) / (float)(num_unlocked) + 0.5);				else				    add = siz - span_siz;				if (static_rpt_dbg) printf(" %2d",add);				report_just.max_col_sizes[report_just.col[report_just.row_just[r]].num_col][c2] += add;				span_siz += add;			    }			}			if (static_rpt_dbg) printf("\n");		    }		}	    }	}    }    if (static_rpt_dbg) {	for (j=0; j<MAX_COL; j++)	    hit[j]=0;	printf("   Maxlen Columns (2nd Pass):  \n");	for (j=0 ; j<report_just.num_col_just; j++){	    if (!hit[report_just.col[j].num_col]){		printf("      %d Col: ",report_just.col[j].num_col);	    	    		for (c2=0; c2<report_just.col[j].num_col; c2++)		    printf("  %2d", report_just.max_col_sizes[report_just.col[j].num_col][c2]);		printf("\n"); 		hit[report_just.col[j].num_col]=1;	    }	}	printf("\n");    }    report_just.width = 0;    for (j=0; j<MAX_COL; j++)	hit[j]=0;    if (static_rpt_dbg) printf("   Computing Report width per justification:  \n");    for (j=0 ; j<report_just.num_col_just; j++){	hit[report_just.col[j].num_col] = 2;	for (c2=0; c2<report_just.col[j].num_col; c2++)	    hit[report_just.col[j].num_col] +=  report_just.max_col_sizes[report_just.col[j].num_col][c2] + space_pad*2;	hit[report_just.col[j].num_col] +=  report_just.col[j].num_col - 1;	report_just.col[j].min_just_width =  hit[report_just.col[j].num_col] ;	if (report_just.width <  hit[report_just.col[j].num_col])	    report_just.width = hit[report_just.col[j].num_col];	if (static_rpt_dbg) printf("      Just %d: Col:%d   Width %d\n",j,report_just.col[j].num_col,hit[report_just.col[j].num_col]);    }    if (CENTER_PAGE && (report_just.width < PAGE_WIDTH))  print_spaces((PAGE_WIDTH - report_just.width)/2, fp);    print_start_line(report_just.width,fp);    /* produce the report */    for (r=0; r<report_just.tot_num_row; r++){	char *desc_column_ptr[MAX_COL], *p;	int desc_column_size[MAX_COL];	int desc_column_text_size[MAX_COL];	int row_not_done, c2, c;		int current_just, current_num_col, current_underage, current_add, size_adjustment, current_num_unlocked;	row_not_done = 1;	current_just = report_just.row_just[r];	current_num_col = report_just.col[current_just].num_col;	current_num_unlocked = report_just.col[current_just].num_col - report_just.col[current_just].num_locked; 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久99久久久久| 亚洲bt欧美bt精品777| 色婷婷综合中文久久一本| 久久中文字幕电影| av电影天堂一区二区在线观看| 亚洲午夜一区二区三区| 国产视频在线观看一区二区三区| 国产成人精品免费| 亚洲午夜三级在线| 久久久久一区二区三区四区| 欧美影视一区二区三区| 精品一二三四在线| 一区二区三区在线免费播放| 日韩欧美卡一卡二| 91成人在线免费观看| 久草这里只有精品视频| 亚洲图片你懂的| 在线观看国产一区二区| 精品一区二区三区免费播放| 国产精品免费视频观看| 一本大道av伊人久久综合| 欧美aaa在线| 亚洲精品日韩一| 久久久久9999亚洲精品| 欧美另类变人与禽xxxxx| 成人国产亚洲欧美成人综合网| 男女男精品视频| 亚洲精品日日夜夜| 国产精品嫩草影院av蜜臀| 日韩一区二区三区在线观看| 91论坛在线播放| 国产精品中文字幕日韩精品| 免费精品99久久国产综合精品| 一区视频在线播放| 精品免费一区二区三区| 欧美日韩国产一级| 91影视在线播放| 国产.欧美.日韩| 蜜臀av在线播放一区二区三区| 夜夜夜精品看看| 中文字幕综合网| 中文字幕一区二区三区四区| 日韩一区二区三区精品视频| 色嗨嗨av一区二区三区| 国产在线播精品第三| 蜜桃一区二区三区在线观看| 亚洲国产一区二区在线播放| 亚洲欧美偷拍卡通变态| 国产精品亲子乱子伦xxxx裸| 国产亚洲婷婷免费| 久久综合中文字幕| 26uuu久久天堂性欧美| 欧美一级免费大片| 91精品国产综合久久香蕉的特点| 欧美色大人视频| 欧美在线免费观看亚洲| 91丨国产丨九色丨pron| 9久草视频在线视频精品| 成人网在线免费视频| 国产91综合网| 国产成人精品影视| 成人免费视频一区二区| 成人国产亚洲欧美成人综合网| 国产成人综合在线观看| 一区2区3区在线看| 亚洲综合激情小说| 亚洲成人动漫精品| 日本成人超碰在线观看| 激情另类小说区图片区视频区| 久久精品国产一区二区三区免费看| 美腿丝袜亚洲综合| 韩国视频一区二区| 国产激情偷乱视频一区二区三区| 国产精品18久久久久久久久| 丁香婷婷深情五月亚洲| 不卡区在线中文字幕| 日本韩国视频一区二区| 欧美午夜精品久久久久久孕妇| 欧美三级电影网| 日韩三级视频在线看| 久久午夜电影网| 26uuu色噜噜精品一区| 欧美一区二区三区婷婷月色 | 精品99一区二区三区| 欧美精品一区二| 国产精品不卡一区| 亚洲综合色丁香婷婷六月图片| 男女男精品视频| 高清beeg欧美| 欧美中文字幕亚洲一区二区va在线| 欧美喷水一区二区| 久久综合久久综合久久| 中文字幕亚洲区| 亚洲国产wwwccc36天堂| 蜜臀99久久精品久久久久久软件| 国产精品自拍三区| 欧美在线视频日韩| 精品国产一区二区三区久久久蜜月 | 国产一区日韩二区欧美三区| 99久久99久久久精品齐齐| 欧美三级乱人伦电影| 精品粉嫩aⅴ一区二区三区四区| 国产精品丝袜久久久久久app| 亚洲精品久久嫩草网站秘色| 美国毛片一区二区三区| 99久久精品一区二区| 欧美一区二区三区影视| 最近中文字幕一区二区三区| 亚洲综合一区二区三区| 日韩中文字幕亚洲一区二区va在线| 狠狠狠色丁香婷婷综合激情| 色哟哟在线观看一区二区三区| 日韩欧美的一区| 亚洲美女淫视频| 国产精品18久久久久久vr| 欧美日本在线播放| 国产精品色在线| 老司机精品视频在线| 色妞www精品视频| 欧美va天堂va视频va在线| 亚洲精品成人天堂一二三| 九九在线精品视频| 色婷婷av一区二区三区大白胸| 欧美大片一区二区三区| 午夜国产精品一区| 日本韩国视频一区二区| 欧美激情在线看| 久久99国产精品免费| 欧美日韩激情在线| 亚洲欧美激情一区二区| 国产.欧美.日韩| 精品99久久久久久| 日韩高清不卡在线| 欧美亚洲精品一区| 久久在线观看免费| 免费观看在线色综合| 色呦呦国产精品| 中文字幕在线一区免费| 国产精品自拍网站| 精品国一区二区三区| 日本在线观看不卡视频| 精品视频资源站| 一区二区三区精品久久久| 99久久99久久久精品齐齐| 中文一区二区在线观看| 国产一区不卡视频| 精品剧情在线观看| 免费高清视频精品| 欧美二区在线观看| 亚洲男帅同性gay1069| 国产精品一区在线观看乱码 | 五月天婷婷综合| 91国在线观看| 国产女同互慰高潮91漫画| 激情综合色综合久久综合| 欧美一区二区在线免费播放| 日韩电影一二三区| 欧美精品自拍偷拍| 日韩精品乱码免费| 欧美乱妇一区二区三区不卡视频| 亚洲午夜一区二区| 欧美日韩国产高清一区二区三区 | 亚洲久草在线视频| 欧美亚洲精品一区| 久久精品国产精品亚洲红杏| www亚洲一区| 91天堂素人约啪| 日韩av中文字幕一区二区三区| 欧美videofree性高清杂交| 成人精品亚洲人成在线| 亚洲最新在线观看| 欧美一区二区啪啪| 成人丝袜18视频在线观看| 亚洲影视在线观看| www国产亚洲精品久久麻豆| 99久久婷婷国产综合精品| 天堂午夜影视日韩欧美一区二区| 亚洲精品一区二区三区香蕉 | 色婷婷av一区| 麻豆91精品91久久久的内涵| 国产农村妇女精品| 精品视频在线看| 国产v综合v亚洲欧| 午夜视频一区二区三区| 国产欧美一区二区精品婷婷| 精品视频免费看| 国产一区91精品张津瑜| 亚洲综合丝袜美腿| 久久精品人人做人人爽97| 欧美性猛交一区二区三区精品| 国产精品 欧美精品| 视频在线观看一区二区三区| 国产精品免费网站在线观看| 日韩欧美一区在线| 色老汉av一区二区三区| 国产99久久久久| 欧美96一区二区免费视频| 伊人一区二区三区| 国产性天天综合网| 欧美一区二区精品|