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

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

?? p.c

?? UNIX 下
?? C
字號:
#include "stdio.h"#include "stdlib.h"#include "string.h"//#include "curses.h"#define font_len 8#ifdef TRUE#else #define TRUE 1#endif#ifdef FALSE#else#define FALSE 0#endif#ifdef DEBUG #define DEBUF_OUTTEXT(a)#else#define DEBUG_OUTTEXT(a) printf("%s\n", a)#endif#define RET_OK 0#define RET_ERR 1#define COL_NUM 16#define COL_MAX_SIZE 128#define LINE_NUM 64#define ASSERT(arg, fp) {if(arg ==NULL){if(fp) fclose(fp); return RET_ERR;}}#define IN#define OUT#define FONT_MAX_NUM 10const char BADY[] ="<B>";const char END[]  ="<E>";const char HEAD_E[] ="</H>";const char BADY_E[] ="</B>";const char END_E[]  ="</E>";const char FONT[] ="<F?>";const char PARAM[] = "$?";char * FONT_BEGIN[FONT_MAX_NUM]={"\033e", "\033X", "\033U", "\033g",\				 "\033i"};char * FONT_END[FONT_MAX_NUM] ={"\033f", "\033Y", "\033R", "\033h",\                                "\033j"};char ERR_FILE_NO[]="文件不存在!file exist!";struct _DATA{	char * pCol[COL_NUM];	struct _DATA * pNext;}*g_pData, *g_pRoot;int g_iTotalNum = 0;int g_iCOLCounter = 0, g_iRAWCounter =0;char * g_pPrintBuf = NULL;char * g_pHeadBuf  = NULL;char * g_pEndBuf   = NULL;char * g_pBadyBuf[LINE_NUM];int g_iBadyCounter =0;/*g_iBadyCounter:數據實體個數*/int g_iLoopNUM =0;/*g_iLoopNUM:用循環方式打印時,定義循環次數*/int g_iPrintType =0;/*g_iPrintType:定義打印方式.==0終瑞打印, ==1主機打印*/char * g_pExecBuf = NULL;char g_sTMP[128];int readFormat(char *filename);int readData(char * filename);int help();int processFormat(int type);char * transFormat(char* inBuf);FILE * openTMP();void closeTMP(FILE* fp);FILE * openTMP(){	FILE * fp;	fp = fopen(g_sTMP, "w");	if(!fp) return NULL;	if(g_iPrintType == 0){//透明打印		fputs("\033[5i", fp);	}else{ //主機打印		printf("!!");	}	return fp;}void closeTMP(FILE *fp){	if(!fp) return ;	if(g_iPrintType ==0){			fputs("\033[4i", fp);	}else{	}	fclose(fp);}int main(int argc, char *argv[]){	char cBuf;	if(argc!=2 && argc!=3){		help();		return RET_ERR;	}	if(argc ==2){		if(strlen(argv[1])<4 ){			help();			return RET_ERR;		}		if(argv[1][1]=='f' || argv[1][1]=='F'){			g_iLoopNUM = 50000;			readFormat(&argv[1][3]);			processFormat(1);		}	}else if(argc ==3){		if(strlen(argv[1])<4 || strlen(argv[2])<4){			help();			return RET_ERR;		}		cBuf = argv[1][1];		switch(cBuf){			case 'f':			case 'F':				readFormat(&argv[1][3]);			break;			default:				printf("/F:FormatFile\n");				return RET_ERR;			break;		}			cBuf = argv[2][1];		switch(cBuf){			case 'D':			case 'd':				strcpy(g_sTMP, &argv[2][3]);				strcat(g_sTMP, ".p");				readData(&argv[2][3]);				processFormat(0);			break;			case 'n':			case 'N':				g_iLoopNUM = atoi(&argv[2][3]);				processFormat(1);				break;			default:				printf("循環次數或讀取數據文件! /N:number | /D:DataFile\n");				printf("大家好!\n");				break;		}	}	/*	if(!initscr()){		return RET_ERR;	}	printw("Hello World!\n");	refresh();	sleep(1);	endwin();	*/	return RET_OK;}int readData(char * filename){	FILE * fp;	char cBuf;	char szBuf[COL_MAX_SIZE];	int  iCounter =0;	if(filename == NULL) return RET_ERR;		if(!(fp=fopen(filename, "r"))){		printf("%s:%s\n", ERR_FILE_NO, filename);		return RET_ERR;	}	g_pRoot = g_pData = (struct _DATA*)malloc(sizeof(struct _DATA));	if(g_pData ==NULL) return RET_ERR;	else g_pData->pNext = NULL;	//*****begin read date file	while(!feof(fp)){		if(fread(&cBuf, 1, 1, fp) != 1) break;				if(iCounter < COL_MAX_SIZE - 1){			szBuf[iCounter++] = cBuf;			szBuf[iCounter] = '\0';		}		//szBuf[iCounter] = '\0';		if(cBuf =='|'){			szBuf[iCounter-1] = '\0';			iCounter =0;			if(strlen(szBuf) == 0){			//	continue;			}			g_pData->pCol[g_iCOLCounter] =(char*)malloc(strlen(szBuf));			ASSERT(g_pData->pCol[g_iCOLCounter], fp);			strncpy(g_pData->pCol[g_iCOLCounter], szBuf, strlen(szBuf));			g_pData->pCol[g_iCOLCounter][strlen(szBuf)] ='\0';			printf("COL[%d]=%s\n", g_iCOLCounter, g_pData->pCol[g_iCOLCounter]);			memset(szBuf, 0, sizeof(szBuf));			g_iCOLCounter ++;		}						if(cBuf =='\n' || cBuf =='\r' ){			iCounter = 0;			g_pData->pNext = (struct _DATA*)malloc(sizeof(struct _DATA));			ASSERT(g_pData->pNext, fp);			g_pData = g_pData->pNext;			g_pData->pNext = NULL;						g_iRAWCounter ++;				memset(g_pData->pCol,  0, COL_NUM);			g_iCOLCounter =0;		}	}	g_iTotalNum = g_iRAWCounter;	g_iRAWCounter = 0;	g_pData = g_pRoot;	//*****end 	if(fp) fclose(fp);	return RET_OK;}int readFormat(char *filename){	FILE * fp, *fp1;	//char cBuf;	long idx1, idx2;	if(filename == NULL) RET_ERR;	if(!(fp=fopen(filename, "r"))) return RET_ERR;		fseek(fp , 0, SEEK_SET);	while(!feof(fp)){		if(fgetc(fp) =='<'){			idx1 = ftell(fp)+3;			switch(fgetc(fp)){				case 'H':					while(TRUE){						if(fgetc(fp) == '<' &&						   fgetc(fp) == '/' && 						   fgetc(fp) =='H' && 						   fgetc(fp) == '>'){							idx2 = ftell(fp);							g_pHeadBuf = (char*)malloc(idx2 -idx1);							ASSERT(g_pHeadBuf, fp);							fseek(fp, -(idx2-idx1), SEEK_CUR);							fread(g_pHeadBuf, 1, idx2-idx1-4, fp);							g_pHeadBuf[idx2 - idx1 -3] = '\0';							break;						}					}				break;				case 'B':					while(TRUE){						if(fgetc(fp) == '<' &&						   fgetc(fp) == '/' && 						   fgetc(fp) =='B' && 						   fgetc(fp) == '>'){							idx2 = ftell(fp);							g_pBadyBuf[g_iBadyCounter] = (char*)malloc(idx2 -idx1);							ASSERT(g_pBadyBuf[g_iBadyCounter], fp);							fseek(fp, -(idx2-idx1), SEEK_CUR);							fread(g_pBadyBuf[g_iBadyCounter], 1, idx2-idx1-4, fp);							g_pBadyBuf[g_iBadyCounter][idx2 - idx1 -3] = '\0';							g_iBadyCounter ++;							break;						}					}				break;				case 'E':					while(TRUE){						if(fgetc(fp) == '<' &&						   fgetc(fp) == '/' && 						   fgetc(fp) =='E' && 						   fgetc(fp) == '>'){							idx2 = ftell(fp);							g_pEndBuf = (char*)malloc(idx2 -idx1);							ASSERT(g_pEndBuf, fp);							fseek(fp, -(idx2-idx1), SEEK_CUR);							fread(g_pEndBuf, 1, idx2-idx1-4, fp);							g_pEndBuf[idx2 - idx1 - 2] = '\0';							break;						}					}				break;						}		}	}	if(fp) fclose(fp);	return RET_OK;}int processFormat(int type){	int i;	FILE * tmp_p =NULL;	char printBuf[56];	switch(type){		case 0://使用數據文件輸入, 打印直至文件結束		for(i =0; i< g_iTotalNum && g_pData->pNext; i++){			tmp_p = openTMP();			if(!tmp_p) return RET_ERR;/*			if(g_pHeadBuf){			}			for(i=0; g_pBadyBuf[i] && i< LINE_NUM; i++){ 			}*/			if(g_pEndBuf){				g_pExecBuf = transFormat(g_pEndBuf);				ASSERT(g_pExecBuf, tmp_p);				fputs(g_pExecBuf, tmp_p);				if(g_pExecBuf) 				{					free(g_pExecBuf);					g_pExecBuf = NULL;				}				fputs("\n", tmp_p);			}			closeTMP(tmp_p);			memset(printBuf, 0, sizeof(printBuf));			if(g_iPrintType == 0){				printf("Content=%s,按回車打印......", g_pData->pCol[1]);				getchar();				sprintf(printBuf, "cat %s ", g_sTMP);				system(printBuf);				printf("輸出完成.\n\n");			}else{				system("lp tmp.p");			}			g_pData = g_pData->pNext;		}		break;		case 1://不使用數據文件輸入, 指定打印次數			tmp_p = openTMP();			if(!tmp_p) return RET_ERR;			if(g_pHeadBuf){			}else			if(g_pBadyBuf[0]){			}else			if(g_pEndBuf){				g_pExecBuf = transFormat(g_pEndBuf);				ASSERT(g_pExecBuf, tmp_p);				fputs(g_pExecBuf, tmp_p);			//	fputs("\r\n", tmp_p);			}else{				printf("請定義固定打印格式及內容:\r\n在<E></E>數據段中!\r\n");			}			closeTMP(tmp_p);			for(i = 0; i< g_iLoopNUM; i++){			if(g_iPrintType ==0){				printf("按回車鍵打印......");				getchar();				system("cat tmp.p");				printf("打印完成.\n");			}else{			}		}				break;	}	return RET_OK;}char * transFormat(IN char* inBuf){	int inp=0, outp=0, font=0, tinp=0, datIdx=0;	char fontBuf[font_len];	char * tmpPoint=NULL;	//當格式數或數	if(inBuf == NULL || g_pData->pNext == NULL)		 return NULL;		g_pExecBuf = (char*)malloc(strlen(inBuf)*2+COL_MAX_SIZE*COL_NUM);	if(g_pExecBuf == (char*)NULL) return NULL;	memset(g_pExecBuf, 0, strlen(inBuf)*2 +COL_MAX_SIZE*COL_NUM);	if(g_iPrintType == 0){//終端打印		while(inp < strlen(inBuf)){			if(inBuf[inp]=='/' && inBuf[inp+1]=='/'){				//讀注釋,不進行處理.				tinp = inp ;				while(inBuf[++tinp] != '\n'){}				inp = tinp +1;				continue;			}						if(inBuf[inp]=='<'){				if(inBuf[inp+1]=='F'){					font = 0;					tinp = inp+2;					while(tinp++ < inp+font_len){			 			if(inBuf[tinp] == '>'){							memset(fontBuf, 0, font_len);							strncpy(fontBuf, &inBuf[inp+2], tinp-inp-2);							font = atoi(fontBuf);							break;						}					}					if(font >0 && font <FONT_MAX_NUM){//有字體控制語句						sprintf(&g_pExecBuf[outp], FONT_BEGIN[font -1]);						outp += strlen(FONT_BEGIN[font -1]);						inp += tinp-inp +1;						continue;					}				}											if(inBuf[inp+1]=='/'){				//font 引用上次字體變量font,恢復字體					tinp = inp +2;				//下面代嗎需要優化					while(tinp++ < inp +font_len){						if(inBuf[tinp] == '>'){							font = atoi(&inBuf[inp+3]);							break;						}					}					if(font >0 && font < FONT_MAX_NUM){						sprintf(&g_pExecBuf[outp], FONT_END[font-1]);						outp += strlen(FONT_END[font-1]);						inp += tinp -inp +1;						continue;					}								}				if(inBuf[inp+1] =='$' && g_pData){//如果數據文件存在,從中檢索據段				font = 0;				tinp = inp+2;				while(++tinp < inp +font_len){					if(inBuf[tinp] =='>' ){						memset(fontBuf, 0, font_len);							//這里存儲數據段索引臨時緩沖							strncpy(fontBuf, &inBuf[inp+2], tinp-inp-2);							font = atoi(fontBuf);//font現在用作存儲數據索引							break;						}						}					if(font < COL_NUM && font >0 && g_pData->pCol[font-1]){						//sprintf(&g_pExecBuf[outp], g_pData->pCol[font-1], strlen(g_pData->pCol[font-1]));						strncpy(&g_pExecBuf[outp], g_pData->pCol[font-1], strlen(g_pData->pCol[font-1]));							outp +=strlen(g_pData->pCol[font-1]);						inp+=tinp -inp +1;						continue;					}				}				}		g_pExecBuf[outp++] = inBuf[inp++];			}	}else if(g_iPrintType ==1){//主機打印	}		return g_pExecBuf;}int releaseData(){	g_pData = g_pRoot;	do{	}while(g_pData->pNext);	return RET_OK;}int help(){	printf("NOTE:\n");	printf("       program /f:format-file [/d:data-file|n:number]\n\n");	printf("字體:\n");	printf("<F?>text<F?>  F?定義打印字體.\n\n");	printf("數據引用:\n");	printf("<$?>          $?表示數據引用列.\n\n");	printf("例子:\n");	printf("<H>title(<$9>)</H>\n");	printf("<B>姓名:<$1>,年齡:<$2>,工齡:<$3>,工資:$1024.00</B>\n");	printf("<E>END</E>\n");	return RET_OK;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一区在线播放| 国产剧情在线观看一区二区| 国产欧美日韩在线看| 欧美一级理论片| 欧美日韩国产不卡| 在线一区二区观看| 欧美色区777第一页| 欧美三片在线视频观看| 欧美情侣在线播放| 91超碰这里只有精品国产| 欧美日本在线播放| 日韩一区二区精品在线观看| 精品国产一区二区在线观看| 2023国产一二三区日本精品2022| 国产精品欧美经典| 精品国产制服丝袜高跟| 久久久久久久久久久电影| 久久蜜桃av一区精品变态类天堂| 久久尤物电影视频在线观看| 国产午夜久久久久| 中文字幕一区二区三区不卡| 亚洲久草在线视频| 亚洲成人一区二区在线观看| 免费成人av在线播放| 男男视频亚洲欧美| 国产a区久久久| 91视频com| 日韩欧美在线观看一区二区三区| 久久久久国产一区二区三区四区| 亚洲欧洲韩国日本视频| 偷拍一区二区三区四区| 国模一区二区三区白浆| 99国产精品久久久久| 欧美日韩国产片| 国产亚洲成aⅴ人片在线观看| 中文字幕国产精品一区二区| 亚洲chinese男男1069| 国内精品国产成人| 欧美吞精做爰啪啪高潮| 欧美精品一区二区三区蜜桃| 亚洲免费av观看| 麻豆91精品视频| 色综合天天综合网国产成人综合天| 色综合网色综合| 日韩三级视频中文字幕| 1区2区3区欧美| 国产一二精品视频| 欧美视频精品在线观看| 欧美激情一区二区三区全黄| 日韩高清不卡在线| 91色porny在线视频| 久久综合狠狠综合久久综合88| 亚洲小说欧美激情另类| 成人国产亚洲欧美成人综合网| 91精品福利在线一区二区三区 | 欧美日韩视频在线第一区| 久久久亚洲午夜电影| 男女激情视频一区| 欧美视频一区二区三区四区| 亚洲欧美日韩一区二区| 国产成人在线视频播放| 日韩精品中文字幕一区二区三区 | 久久只精品国产| 蜜桃久久久久久久| 欧美日韩精品系列| 一区av在线播放| 成人黄页在线观看| xnxx国产精品| 狠狠久久亚洲欧美| 日韩一级视频免费观看在线| 亚洲不卡一区二区三区| 在线视频观看一区| 亚洲女厕所小便bbb| 99re热视频精品| 国产精品久久久一本精品| 成人免费视频一区| 国产精品视频线看| 成人精品国产免费网站| 亚洲国产精品av| av在线一区二区| 亚洲欧美日韩精品久久久久| 97精品国产露脸对白| 最新中文字幕一区二区三区| 99久久国产综合色|国产精品| 国产精品素人一区二区| 91免费观看视频| 亚洲自拍与偷拍| 欧美放荡的少妇| 蜜桃av一区二区三区电影| 欧美大度的电影原声| 久久91精品国产91久久小草| 久久久久久久精| 91在线观看免费视频| 一区二区欧美国产| 欧美日韩不卡在线| 久久电影网站中文字幕| 久久久精品免费观看| 成人avav影音| 午夜精品久久一牛影视| 欧美成人性战久久| 大桥未久av一区二区三区中文| 国产精品色噜噜| 欧美精品vⅰdeose4hd| 久草中文综合在线| 国产精品久久久久四虎| 欧美在线观看视频在线| 美女视频黄频大全不卡视频在线播放| 337p粉嫩大胆噜噜噜噜噜91av| av在线不卡观看免费观看| 午夜视频一区二区三区| 久久久91精品国产一区二区精品 | 久久电影网站中文字幕| 国产精品久久久久毛片软件| 欧美日韩精品欧美日韩精品| 国产黄人亚洲片| 亚洲综合成人在线| 中文子幕无线码一区tr| 欧美妇女性影城| 99久久伊人精品| 激情综合色综合久久| 亚洲另类在线一区| 精品国产免费人成在线观看| 色综合av在线| 国产精品99久久久久久久vr| 亚洲五月六月丁香激情| 国产蜜臀97一区二区三区| 欧美情侣在线播放| 一本到一区二区三区| 国产91丝袜在线播放| 婷婷开心激情综合| 亚洲欧美综合网| 精品国产乱码久久久久久久久| 在线免费视频一区二区| 国产1区2区3区精品美女| 日本91福利区| 丝袜美腿亚洲色图| 亚洲精品美国一| 日韩理论电影院| 国产精品欧美一级免费| 国产亚洲欧洲997久久综合 | 亚洲最色的网站| 国产精品久久二区二区| 精品91自产拍在线观看一区| 欧美片网站yy| 欧美三区在线视频| 欧美综合亚洲图片综合区| 99久久精品国产一区二区三区| 国产精品性做久久久久久| 国内精品伊人久久久久影院对白| 久久精品国产免费看久久精品| 亚洲一二三四久久| 亚洲综合男人的天堂| 日韩理论片一区二区| **欧美大码日韩| 亚洲影院在线观看| 亚洲精品免费一二三区| 亚洲乱码中文字幕| 亚洲综合在线五月| 一区二区三区精品| 亚洲一区国产视频| 亚洲mv在线观看| 日本欧美一区二区三区乱码| 美美哒免费高清在线观看视频一区二区| 亚洲成人综合网站| 日本不卡视频一二三区| 美女高潮久久久| 国产成人h网站| kk眼镜猥琐国模调教系列一区二区| 99国内精品久久| 欧美日韩二区三区| 精品国产一二三区| 国产喂奶挤奶一区二区三区| 国产精品久久久久7777按摩| 一区二区三区在线免费视频| 日韩和欧美一区二区三区| 精品一区二区日韩| 99视频精品免费视频| 日本二三区不卡| 日韩欧美在线1卡| 国产精品乱人伦| 尤物av一区二区| 婷婷综合久久一区二区三区| 久久黄色级2电影| 99精品视频一区| 欧美视频一区在线| 精品国产成人在线影院 | 午夜精品久久一牛影视| 青青草原综合久久大伊人精品 | 欧美精品一区二区三区四区| 国产精品久久网站| 日精品一区二区三区| 国产精品自在在线| 一本一道波多野结衣一区二区| 91精品国产入口| 亚洲国产精品国自产拍av| 亚洲在线中文字幕| 国产一区二区精品久久| 成人av高清在线| 欧美大片在线观看| 亚洲激情在线激情|