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

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

?? kanji.c

?? 飛鴿傳書for linux X圖形界面下源碼
?? C
字號(hào):
/* * kanji.c - kanji code converter * Copyright (C) 1994, 1996 by candy */const char rcsid_kanji[] = "$Id: kanji.c,v 3.7 1997/05/02 04:06:57 candy Exp candy $";#include <stdio.h>#include <stddef.h>#include "kanji.h"int kanji_in = '@';int kanji_out = 'J';static int etoj(int wc);static int etos(int wc);static int jtoe(int wc);static int jtos(int wc);static int stoe(int wc);static int stoj(int wc);static int get_euc(struct MB *mb, int ch, int (*put)(int));static int get_sjis(struct MB *mb, int ch, int (*put)(int));static int get_jis(struct MB *mb, int ch, int (*put)(int));/* * EUC を JIS 0x2121..0x7e7e  * 0x00 .. 0xff はそのまま。 */static intetoj(int wc){	int ret, hib = (wc >> 8) & 0x7f, lob = wc & 0x7f;	if (hib != 0)		ret = (hib << 8) | lob;	else		ret = wc;	return ret;}/* etoj *//* * EUC を shift-JIS  * 0x00 .. 0xff はそのまま。 */static intetos(int wc){	int ret, hib = (wc >> 8) & 0x7f, lob = wc & 0x7f;	if ((wc & 0xff00) == 0x8e00) {		ret = wc & 0xff;	}	else if (hib != 0)		ret = jtos((hib << 8) | lob);	else		ret = wc;	return ret;}/* etos *//* * JIS 0x2121..0x7e7e を EUC  * 0x00 .. 0xff はそのまま。 */static intjtoe(int wc){	int ret, hib = (wc >> 8) & 0xff, lob = wc & 0xff;	if (hib != 0)		ret = ((hib | 0x80) << 8) | (lob | 0x80);	else		ret = wc;	return ret;}/* jtoe *//* * JIS 0x2121..0x7e7e を shift-JIS  * 0x00 .. 0xff はそのまま。 */static intjtos(int wc){	int ret = 0, err = 0;	int hib = (wc >> 8) & 0xff, lob = wc & 0xff, hi1 = 0x81, hi2 = 0x21, lo1 = 0x1f;	if (hib >= 0x21 && hib < 0x5f)		hi1 = 0x81;	else {		if (hib >= 0x5f && hib < 0x80)			hi1 = 0xc1;		else			err = -1;	}	if (err == 0) {		if ((hib & 1) == 1) {			hi2 = 0x21;			if (lob >= 0x21 && lob < 0x60)				lo1 = 0x1f;			else {				if (lob >= 0x60 && lob < 0x7f)					lo1 = 0x20;				else					err = -1;			}		}		else {			hi2 = 0x22;			if (lob >= 0x21 && lob < 0x7f)				lo1 = 0x7e;			else				err = -1;		}	}	if (err == 0)		ret = (((hib - hi2) / 2 + hi1) << 8) + lob + lo1;	else		ret = wc;	return ret;}/* jtos *//* * shift-JIS を EUC  * 0x00 .. 0xff はそのまま。 */static intstoe(int wc){	int ret, hib = (wc >> 8) & 0xff;	if (hib != 0)		ret = stoj(wc) | 0x8080;	else		ret = wc;	return ret;}/* stoe *//* * shift-JIS を JIS 0x2121..0x7e7e  * 0x00 .. 0xff はそのまま。 */static intstoj(int wc){	int err = 0, ret = 0;	int hib = (wc >> 8) & 0xff, lob = wc & 0xff, hi1 = 0x81, hi2 = 0x21, lo1 = 0x1f;	if (hib >= 0x81 && hib < 0xa0)		hi1 = 0x81;	else {		if (hib >= 0xe0 && hib < 0xf0)			hi1 = 0xc1;		else			err = -1;	}	if (err == 0) {		if (lob >= 0x40 && lob < 0x7f) {			hi2 = 0x21;			lo1 = 0x1f;		}		else {			if (lob >= 0x80 && lob < 0x9f) {				hi2 = 0x21;				lo1 = 0x20;			}			else {				if (lob >= 0x9f && lob < 0xfd) {					hi2 = 0x22;					lo1 = 0x7e;				}				else					err = -1;			}		}	}	if (err == 0)		ret = (((hib - hi1) * 2 + hi2) << 8) + lob - lo1;	else		ret = wc;	return ret;}/* stoj *//* * ch == 0 で鈣び叫すと、*mb を介袋步する。 * ch == EOF で鈣び叫すと、プ〖ルしてある矢機(jī)(033 など)を凜き叫す。 * 提り猛は、矢機(jī)コ〖ド(single-byte: 1..0xff, multi-byte: 0x8181..0xfefe) * 0 ならば、矢機(jī)はない(エスケ〖プシ〖ケンス借妄面など) */static intget_euc(struct MB *mb, int ch, int (*put)(int)){	int ret = 0;	if (ch == 0) {		MB_CLEAR(mb);	}	else {		if (ch == EOF) {			if (mb->hi)				put(mb->hi);			mb->hi = 0;		}		else if (mb->hi) {			ret = (mb->hi << 8) + ch;			mb->hi = 0;		}		else {			if (ch >= 0x80)				mb->hi = ch;			else				ret = ch;		}	}	return ret;}/* get_euc *//* * ch == 0 で鈣び叫すと、*mb を介袋步する。 * ch == EOF で鈣び叫すと、プ〖ルしてある矢機(jī)(033 など)を凜き叫す。 * 提り猛は、矢機(jī)コ〖ド(single-byte: 1..0xff, multi-byte: 0x8181..0xfefe) * 0 ならば、矢機(jī)はない(エスケ〖プシ〖ケンス借妄面など) */static intget_sjis(struct MB *mb, int ch, int (*put)(int)){	int ret = 0;	if (ch == 0) {		MB_CLEAR(mb);	}	else {		if (ch == EOF) {			if (mb->hi)				put(mb->hi);			mb->hi = 0;		}		else if (mb->hi) {			ret = (mb->hi << 8) + ch;			mb->hi = 0;		}		else {			if (is1sjis(ch))				mb->hi = ch;			else				ret = ch;		}	}	return ret;}/* get_sjis *//* * ch == 0 で鈣び叫すと、*mb を介袋步する。 * ch == EOF で鈣び叫すと、プ〖ルしてある矢機(jī)(033 など)を凜き叫す。 * 提り猛は、矢機(jī)コ〖ド(single-byte: 1..0xff, multi-byte: 0x2121..0xfefe) * 0 ならば、矢機(jī)はない(エスケ〖プシ〖ケンス借妄面など) */static intget_jis(struct MB *mb, int ch, int (*put)(int)){	int ret = 0;	if (ch == 0) {		MB_CLEAR(mb);	}	else if (ch == '\n') {		return ch;	}	else {		switch (mb->st) {		case MB_KI1:			if (ch == KI_1) {				mb->st = MB_KI2;			}			else {				mb->st = MB_INITIAL;				put(033);			}			break;		case MB_KI2:			if (ch == kanji_in || ch == '@' || ch == 'B') {				mb->st = MB_INKANJI;				ch = 0;			}			else {				mb->st = MB_INITIAL;				put(033);				put(KI_1);			}			break;		case MB_KO1:			if (ch == KO_1) {				mb->st = MB_KO2;			}			else {				mb->st = MB_INKANJI;				put(033);			}			break;		case MB_KO2:			if (ch == kanji_out || ch == 'J' || ch == 'H' || ch == 'B') {				mb->st = MB_INITIAL;				ch = 0;			}			else {				mb->st = MB_INKANJI;				put(033);				put(KO_1);			}			break;		default:			break;		}/* switch */		switch (mb->st) {		case MB_INITIAL:			if (ch == EOF)				ret = 0;			else if (ch == 033)				mb->st = MB_KI1;			else				ret = ch;			break;		case MB_INKANJI:			if (ch == EOF) {				if (mb->hi) {					mb->st = MB_INITIAL;					put(mb->hi);					mb->hi = 0;				}			}			else if (ch == 033)				mb->st = MB_KO1;			else {				if (mb->hi) {					ret = (mb->hi << 8) + ch;					mb->hi = 0;				}				else					mb->hi = ch;			}			break;		default:			break;		}/* switch */	}	return ret;}/* get_jis *//* * EUC 矢機(jī)誤を shift-JIS に恃垂する。 * ch == 0 でまず鈣び叫し、矢機(jī)誤から1バイトずつ ch に掐れて鈣び叫し、 * 呵稿は ch == EOF で鈣び叫す。 * 叫蝸は put() を奶じて乖われる。 */inteuc_to_sjis(struct MB *mb, int ch, int (*put)(int)){	int wc = get_euc(mb, ch, put);	if (wc != 0) {		wc = etos(wc);		if (wc != 0) {			if (wc & 0xff00) {				put((wc >> 8) & 0xff);			}			put(wc & 0xff);		}	}	return wc;}/* euc_to_sjis *//* * JIS 矢機(jī)誤を shift-JIS に恃垂する。 * ch == 0 でまず鈣び叫し、矢機(jī)誤から1バイトずつ ch に掐れて鈣び叫し、 * 呵稿は ch == EOF で鈣び叫す。 * 叫蝸は put() を奶じて乖われる。 */intjis_to_sjis(struct MB *mb, int ch, int (*put)(int)){	int wc = get_jis(mb, ch, put);	if (wc != 0) {		wc = jtos(wc);		if (wc != 0) {			if (wc & 0xff00) {				put((wc >> 8) & 0xff);			}			put(wc & 0xff);		}	}	return wc;}/* jis_to_sjis *//* */intsjis_to_euc(struct MB *mb, int ch, int (*put)(int)){	int wc = get_sjis(mb, ch, put);	if (wc != 0) {		wc = stoe(wc);		if (wc != 0) {			if (wc & 0xff00) {				put((wc >> 8) & 0xff);			}			put(wc & 0xff);		}	}	return wc;}/* sjis_to_euc *//* */intsjis_to_jis(struct MB *mb, int ch, int (*put)(int)){	int wc = get_sjis(mb, ch, put);	static int inkanji = 0;	if (wc != 0) {		wc = stoj(wc);		if (wc != 0) {			if (wc & 0xff00) {				if (!inkanji) {					inkanji = 1;					put('\033');					put(KI_1);					put(kanji_in);				}				put((wc >> 8) & 0xff);			}			else {				if (inkanji) {					inkanji = 0;					put('\033');					put(KO_1);					put(kanji_out);				}			}			put(wc & 0xff);		}	}	return wc;}/* sjis_to_jis */#define GETWCH(s) (((unsigned char)(s)[0] << 8) | (unsigned char)(s)[1])/* * */char *stretos(char *buf, const char *src){	const unsigned char *s = (const unsigned char *)src;	char *d = buf;	while (*s != '\0') {		int wc;		if (is1euc(*s)) {			wc = GETWCH(s);			wc = etos(wc);			if (s[1] != '\0')				s++;		}		else {			wc = *s;		}		if ((wc & ~0xff) != 0) {			*d++ = wc >> 8;		}		*d++ = wc;		s++;	}/* while */	*d = '\0';	return buf;}/* stretos *//* * buf == src だとだめ(カナの箕)。 */char *strstoe(char *buf, const char *src){	const unsigned char *s = (const unsigned char *)src;	char *d = buf;	while (*s != '\0') {		int wc;		if (is1sjis(*s)) {			wc = GETWCH(s);			wc = stoe(wc);			if (s[1] != '\0')				s++;		}		else if (isskana(*s)) {			wc = 0x8e00 | *s;		}		else {			wc = *s;		}		if ((wc & ~0xff) != 0) {			*d++ = wc >> 8;		}		*d++ = wc;		s++;	}/* while */	*d = '\0';	return buf;}/* strstoe *//* * strstoe() した箕のバイト眶を手す。 */size_tstrstoelen(const char *src){	size_t d = 0;	const unsigned char *s = (const unsigned char *)src;	while (*s != '\0') {		int wc;		if (is1sjis(*s)) {			wc = GETWCH(s);			wc = stoe(wc);			if (s[1] != '\0')				s++;		}		else if (isskana(*s)) {			wc = 0x8e00 | *s;		}		else {			wc = *s;		}		if ((wc & ~0xff) != 0) {			d++;		}		d++;		s++;	}/* while */	return d;}/* strstoelen */static unsigned short kana_zen[64] = {	0xa1a1, 0xa1a3, 0xa1d6, 0xa1d7, 0xa1a2, 0xa1a6, 0xa5f2, 0xa5a1, 	0xa5a3, 0xa5a5, 0xa5a7, 0xa5a9, 0xa5e3, 0xa5e5, 0xa5e7, 0xa5c3, 	0xa1bc, 0xa5a2, 0xa5a4, 0xa5a6, 0xa5a8, 0xa5aa, 0xa5ab, 0xa5ad, 	0xa5af, 0xa5b1, 0xa5b3, 0xa5b5, 0xa5b7, 0xa5b9, 0xa5bb, 0xa5bd, 	0xa5bf, 0xa5c1, 0xa5c4, 0xa5c6, 0xa5c8, 0xa5ca, 0xa5cb, 0xa5cc, 	0xa5cd, 0xa5ce, 0xa5cf, 0xa5d2, 0xa5d5, 0xa5d8, 0xa5db, 0xa5de, 	0xa5df, 0xa5e0, 0xa5e1, 0xa5e2, 0xa5e4, 0xa5e6, 0xa5e8, 0xa5e9, 	0xa5ea, 0xa5eb, 0xa5ec, 0xa5ed, 0xa5ef, 0xa5f3, 0xa1ab, 0xa1ac, };char *strstoe2(char *buf, const char *src){	const unsigned char *s = (unsigned char *)src;	char *d = buf;	while (*s != '\0') {		int wc;		if (is1sjis(*s)) {			wc = GETWCH(s);			wc = stoe(wc);			if (s[1] != '\0')				s++;		}		else if (isskana(*s)) {			wc = kana_zen[*s - 0xa0];		}		else {			wc = *s;		}		if ((wc & ~0xff) != 0) {			*d++ = wc >> 8;		}		*d++ = wc;		s++;	}/* while */	*d = '\0';	return buf;}/* strstoe2 */#ifdef TESTchar *myname;char usage_msg[] =	"euc/sjis converter V0.8086\n"	"usage: %s [-es] [file ...]\n"	"\t-e\tsjis->euc\n"	"\t-j\tsjis->jis\n"	"\t-s\teuc->sjis\n"	;int verbose;int (*filter)(struct MB *mb, int ch, int (*put)(int)) = euc_to_sjis;intfnain(FILE *fp){	struct MB mb;	int err = 0, ch;	filter(&mb, 0, putchar);	while ((ch = fgetc(fp)) != EOF) {		filter(&mb, ch, putchar);	}/* while */	filter(&mb, EOF, putchar);	return err;}/* fnain */intnain(const char *name){	int err = -1;	FILE *fp = fopen(name, "r");	if (fp == NULL) {		fprintf(stderr, "%s: %s: cannot open\n", myname, name);	}	else {		err = fnain(fp);		fclose(fp);	}	return err;}/* nain */#ifdef __BORLANDC__extern int optind;extern char *optarg;extern int getopt(int, char **, const char *);#endifintmain(int argc, char *argv[]){	int ex, ch, show_usage = 0;	myname = argv[0];	while ((ch = getopt(argc, argv, "ejsvV")) != EOF) {		switch (ch) {		default:		case 'V':			show_usage++;			break;		case 'v':			verbose = 1;			break;		case 'e':			filter = sjis_to_euc;			break;		case 'j':			filter = sjis_to_jis;			break;		case 's':			filter = euc_to_sjis;			break;		}/* switch */	}/* while */	ex = 1;	if (show_usage) {		fprintf(stderr, usage_msg, myname);	}	else {		ex = 0;		if (argc - optind == 0) {			if (fnain(stdin) < 0)				ex = 1;		}		else {			int i;			for (i = optind; i < argc; i++) {				if (nain(argv[i]) < 0)					ex = 1;			}/* for */		}	}	return ex;}/* main */#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线欧美日韩国产| 欧美日韩在线免费视频| 精品一区免费av| 日本网站在线观看一区二区三区 | 国产精品私人影院| 精品日韩在线观看| 国产视频亚洲色图| 国产精品白丝在线| 亚洲精品成人少妇| 亚洲成人www| 日韩综合一区二区| 久久99国产精品麻豆| 国产成人三级在线观看| 91首页免费视频| 欧美日韩久久久| 精品国产制服丝袜高跟| 国产精品日日摸夜夜摸av| 亚洲精品国产视频| 免费的国产精品| 不卡一区中文字幕| 91麻豆精品国产91久久久久| 欧美成人欧美edvon| 国产欧美精品一区二区色综合| 自拍视频在线观看一区二区| 亚洲午夜羞羞片| 久久99精品视频| 91一区二区三区在线观看| 在线综合视频播放| 国产欧美一区二区精品秋霞影院| 中文字幕日本乱码精品影院| 日韩av一区二区三区| 国产激情视频一区二区三区欧美| 91视频国产资源| 欧美α欧美αv大片| 亚洲黄一区二区三区| 喷水一区二区三区| 一本色道亚洲精品aⅴ| 久久精品欧美一区二区三区麻豆| 中文字幕日韩一区二区| 日韩综合在线视频| 在线视频一区二区三| 久久久久久久久久久久久女国产乱| 国产精品理论片| 久久超碰97人人做人人爱| 91在线观看一区二区| 久久一日本道色综合| 亚洲图片欧美一区| 色综合久久久久久久久| 26uuu国产电影一区二区| 亚洲aaa精品| 一本到三区不卡视频| 中文字幕第一区第二区| 精品一区二区综合| 5月丁香婷婷综合| 亚洲激情六月丁香| 色婷婷综合久久久中文一区二区| 久久精品视频网| 国精产品一区一区三区mba桃花| 欧美午夜理伦三级在线观看| 综合自拍亚洲综合图不卡区| 国产传媒久久文化传媒| 日韩欧美自拍偷拍| 美女mm1313爽爽久久久蜜臀| 欧美性大战久久久久久久蜜臀 | 日韩亚洲欧美一区二区三区| 亚洲精品ww久久久久久p站| 成人高清免费观看| 国产精品三级在线观看| 成人免费不卡视频| 亚洲国产精品t66y| 岛国精品在线观看| 国产精品免费av| 成人不卡免费av| 中文字幕色av一区二区三区| 91在线小视频| 一区二区三区资源| 欧美色网一区二区| 日韩电影在线观看一区| 91精品在线免费观看| 日韩1区2区3区| 日韩精品一区二区三区老鸭窝| 美女视频黄免费的久久 | 国产91在线|亚洲| 国产亚洲午夜高清国产拍精品| 国产精品一区二区无线| 国产欧美久久久精品影院| 99免费精品在线观看| 亚洲综合色成人| 91精品国产免费| 国产精品白丝jk黑袜喷水| 国产精品的网站| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 午夜精品在线看| 欧美精品一区在线观看| 99国产精品久久| 亚洲成人av中文| 久久久噜噜噜久久人人看| 99免费精品视频| 日韩成人伦理电影在线观看| 久久九九久久九九| 91成人在线精品| 韩国理伦片一区二区三区在线播放| 国产欧美精品一区aⅴ影院 | 日日夜夜免费精品| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 91浏览器在线视频| 日本不卡一二三区黄网| 国产精品视频看| 91精品国产综合久久精品麻豆 | 色呦呦网站一区| 日本不卡视频一二三区| 国产精品嫩草影院av蜜臀| 欧美亚洲日本一区| 成人自拍视频在线观看| 日韩极品在线观看| 欧美国产一区在线| 欧美一级午夜免费电影| 99视频热这里只有精品免费| 久久国产婷婷国产香蕉| 亚洲精品国久久99热| 国产免费久久精品| 日韩欧美一区电影| 日本高清成人免费播放| 成人三级伦理片| 韩国毛片一区二区三区| 日韩在线观看一区二区| 亚洲免费在线电影| 国产精品网站在线播放| 精品国产第一区二区三区观看体验 | 男女性色大片免费观看一区二区| 国产精品久久久久婷婷二区次| 日韩欧美在线1卡| 欧美日韩国产一级| 在线观看国产日韩| 99re热这里只有精品免费视频| 国产一区二区三区国产| 另类人妖一区二区av| 亚洲成人在线免费| 夜夜嗨av一区二区三区四季av| 中文欧美字幕免费| 国产欧美精品区一区二区三区| 精品理论电影在线| 日韩女优av电影| 日韩一级大片在线观看| 欧美一级国产精品| 精品剧情在线观看| 久久伊人中文字幕| 国产视频一区二区三区在线观看 | 国产美女主播视频一区| 久久精品国产在热久久| 久久精品国产一区二区三区免费看 | 天天爽夜夜爽夜夜爽精品视频| 亚洲最大成人网4388xx| 夜夜嗨av一区二区三区四季av| 亚洲自拍偷拍图区| 亚洲丰满少妇videoshd| 午夜激情久久久| 蜜臀久久99精品久久久久久9| 奇米色一区二区三区四区| 日本v片在线高清不卡在线观看| 日韩精品一二区| 捆绑调教美女网站视频一区| 国产一区免费电影| 成人爱爱电影网址| 在线视频欧美精品| 日韩亚洲欧美成人一区| 26uuu欧美| 中文字幕制服丝袜一区二区三区 | 色婷婷久久久久swag精品| 91丨九色丨蝌蚪富婆spa| 欧美亚洲一区二区在线观看| 欧美日本在线看| 久久久久久亚洲综合影院红桃| 国产精品久久久久久久久免费丝袜| 亚洲精品国久久99热| 蜜桃视频一区二区三区在线观看| 国产一区二区视频在线| 91小视频在线免费看| 欧美一区二区三区在线视频| 久久久无码精品亚洲日韩按摩| 亚洲丝袜美腿综合| 久久精品国产精品青草| 99re8在线精品视频免费播放| 欧美日韩成人综合天天影院| 久久日韩精品一区二区五区| 综合色天天鬼久久鬼色| 日韩 欧美一区二区三区| a亚洲天堂av| 欧美电影免费观看高清完整版在线| 中文字幕欧美日本乱码一线二线| 亚洲一区二区在线观看视频| 狠狠色综合播放一区二区| 欧美在线一区二区三区| 久久久久99精品国产片| 日韩国产精品久久久| 色综合久久中文字幕| 欧美国产日产图区| 久久精品72免费观看| 在线不卡一区二区| 亚洲女爱视频在线|