q451993547 发表于 2011-9-25 17:25:27

发一个拼音输入法的源码

#include"pinyin.h"

#define _cByte unsigned char code
#define _PyIndexType unsigned int code

#define NULL 0
#define        PyIndex_i PyIndex_j
#define        PyIndex_u PyIndex_w
#define        PyIndex_v PyIndex_w

_cByte _PyMa_a    []="阿啊呵爱安";
_cByte _PyMa_ai   []="哎爱唉碍哀埃挨矮蔼皑癌艾隘暧呆";
_cByte _PyMa_an   []="安按暗岸案氨鞍俺胺";
_cByte _PyMa_aang []="肮昂盎";
_cByte _PyMa_aao[]="奥澳傲懊熬袄凹敖翱";

_cByte _PyMa_b    []="不把吧爸必";
_cByte _PyMa_ba   []="八吧把爸罢扒拔霸巴叭芭疤捌笆跋靶坝";
_cByte _PyMa_bai[]="白百佰柏摆败拜稗";
_cByte _PyMa_ban[]="扳班办半般搬板伴拌绊版斑扮颁瓣";
_cByte _PyMa_bang []="邦帮梆绑榜膀蚌傍棒谤磅镑";
_cByte _PyMa_bao[]="包宝饱报抱保苞胞褒雹堡豹鲍暴爆剥薄瀑";
_cByte _PyMa_bei[]="被北倍杯备背卑悲碑贝狈钡惫焙辈";
_cByte _PyMa_ben[]="本奔苯笨夯";
_cByte _PyMa_beng []="崩绷甭迸蹦泵";
_cByte _PyMa_bi   []="必毕闭鼻比彼笔币避鄙逼庇毖陛毙敝痹蓖弊碧蔽壁臂";
_cByte _PyMa_bian []="边编鞭贬扁卞便变遍辨辩辫";
_cByte _PyMa_biao []="彪标膘表";
_cByte _PyMa_bie[]="憋鳖别瘪";
_cByte _PyMa_bin[]="宾斌彬滨鬓濒摈";
_cByte _PyMa_bing []="冰丙并病秉柄炳饼兵";
_cByte _PyMa_bo   []="拨波玻钵脖菠播伯驳帛泊勃铂舶博渤搏箔膊卜";
_cByte _PyMa_bu   []="不补哺捕布步怖部埠簿";

_cByte _PyMa_c    []="才吃此差错";
_cByte _PyMa_ca   []="擦嚓";
_cByte _PyMa_cai[]="猜才菜蔡财材裁采彩睬踩";
_cByte _PyMa_can[]="参餐残蚕惭惨灿";
_cByte _PyMa_cang []="仓沧苍舱藏";
_cByte _PyMa_cao[]="曹操草嘈槽糙";
_cByte _PyMa_ce   []="侧厕测策册恻";
_cByte _PyMa_ceng []="层蹭曾";
_cByte _PyMa_ci   []="此次词辞刺慈磁瓷伺祠雌赐疵茨糍";
_cByte _PyMa_cong []="囱从匆葱聪丛";
_cByte _PyMa_cou[]="凑";
_cByte _PyMa_cu   []="粗促醋簇";
_cByte _PyMa_cuan []="蹿窜篡";
_cByte _PyMa_cui[]="崔催摧脆淬瘁粹翠";
_cByte _PyMa_cun[]="寸村存";
_cByte _PyMa_cuo[]="错搓磋撮挫措鹾";

_cByte _PyMa_d    []="的地得第多";
_cByte _PyMa_da   []="大打搭达答瘩";
_cByte _PyMa_dai[]="呆歹傣代带待怠殆贷袋逮戴";
_cByte _PyMa_dan[]="但单担淡耽蛋旦丹弹胆掸诞惮郸氮";
_cByte _PyMa_dang []="当挡党荡档";
_cByte _PyMa_dao[]="道到倒导盗刀岛捣稻蹈悼祷";
_cByte _PyMa_de   []="的地得德";
_cByte _PyMa_deng []="灯等登蹬邓凳瞪";
_cByte _PyMa_di   []="第地弟低底抵堤滴狄迪敌涤笛嫡帝递缔蒂";
_cByte _PyMa_dian []="点电店典掂惦甸垫淀奠颠碘佃殿滇靛";
_cByte _PyMa_diao []="掉钓刁叼凋碉雕吊";
_cByte _PyMa_die[]="爹跌叠蝶谍碟迭";
_cByte _PyMa_ding []="顶定订丁钉叮盯鼎锭";
_cByte _PyMa_diu[]="丢";
_cByte _PyMa_dong []="动东冬懂冻洞董侗恫栋";
_cByte _PyMa_dou[]="都豆斗抖陡逗兜痘";
_cByte _PyMa_du   []="杜读独肚度督毒犊堵赌睹妒渡镀";
_cByte _PyMa_duan []="端短段断缎锻";
_cByte _PyMa_dui[]="对堆队兑";
_cByte _PyMa_dun[]="吨敦墩蹲盾钝顿遁";
_cByte _PyMa_duo[]="多哆夺掇朵垛躲剁堕舵惰跺";

_cByte _PyMa_e    []="二饿鹅恶额俄讹娥峨蛾遏厄扼鄂";
_cByte _PyMa_en   []="恩嗯";
_cByte _PyMa_er   []="二儿而尔耳洱饵贰";

_cByte _PyMa_f    []="发否方放法";
_cByte _PyMa_fa   []="法发乏罚伐阀筏珐";
_cByte _PyMa_fan[]="反饭翻烦返繁帆番藩凡矾钒樊犯泛范贩";
_cByte _PyMa_fang []="方放坊芳防妨房肪仿访纺";
_cByte _PyMa_fei[]="飞非啡菲费肥匪诽吠废沸肺";
_cByte _PyMa_fen[]="分份吩纷奋愤芬氛酚坟汾焚粉忿粪";
_cByte _PyMa_feng []="峰锋丰风枫封疯烽蜂冯逢缝讽凤奉";
_cByte _PyMa_fo   []="佛";
_cByte _PyMa_fou[]="否";
_cByte _PyMa_fu   []="服复幅付夫妇赴副肤父符府附咐伏扶福敷弗拂俘氟浮涪袱辐抚甫斧俯釜辅腑腐讣负阜傅孵富赋缚腹覆";

_cByte _PyMa_g    []="给该个广郭";
_cByte _PyMa_ga   []="嘎噶尬";
_cByte _PyMa_gai[]="该改概盖钙溉";
_cByte _PyMa_gan[]="干甘杆柑肝赶敢感赣竿秆尴";
_cByte _PyMa_gang []="冈刚岗纲肛缸钢港杠";
_cByte _PyMa_gao[]="皋羔高膏篙糕搞稿镐告";
_cByte _PyMa_ge   []="个各格哥咯胳鸽割歌革葛阁搁隔戈疙铬";
_cByte _PyMa_gei[]="给";
_cByte _PyMa_gen[]="根跟";
_cByte _PyMa_geng []="更庚耕羹埂耿梗";
_cByte _PyMa_gong []="公共工弓功攻供宫恭躬龚巩汞拱贡";
_cByte _PyMa_gou[]="勾沟购够构钩狗苟垢";
_cByte _PyMa_gu   []="故顾估姑古菇固咕孤沽辜箍谷股骨蛊鼓雇";
_cByte _PyMa_gua[]="挂瓜刮剐寡褂";
_cByte _PyMa_guai []="怪乖拐";
_cByte _PyMa_guan []="关惯观管馆官冠棺贯灌罐";
_cByte _PyMa_guang[]="光广逛";
_cByte _PyMa_gui[]="归规桂贵瑰闺诡跪轨癸硅龟鬼刽圭柜";
_cByte _PyMa_gun[]="辊滚棍";
_cByte _PyMa_guo[]="国过郭锅果裹";

_cByte _PyMa_h    []="哈呵嘿和好";
_cByte _PyMa_ha   []="哈蛤";
_cByte _PyMa_hai[]="孩海害亥骇氦骸";
_cByte _PyMa_han[]="汉汗韩含寒函涵捍憾撼罕喊酣憨旱悍焊翰邯";
_cByte _PyMa_hang []="杭航行";
_cByte _PyMa_hao[]="好号毫豪嚎壕郝浩耗";
_cByte _PyMa_he   []="和何河喝合盒呵核贺禾阂荷涸菏褐赫鹤";
_cByte _PyMa_hei[]="黑嘿";
_cByte _PyMa_hen[]="很狠恨痕";
_cByte _PyMa_heng []="哼横亨恒衡";
_cByte _PyMa_hong []="红哄洪烘宏鸿轰虹弘";
_cByte _PyMa_hou[]="后厚候喉猴吼侯";
_cByte _PyMa_hu   []="乎呼忽胡护弧狐壶湖葫瑚糊蝴虎唬互户沪";
_cByte _PyMa_hua[]="花话华化哗滑猾划画";
_cByte _PyMa_huai []="怀坏淮徊槐";
_cByte _PyMa_huan []="欢还环患换缓幻焕痪唤涣宦桓豢";
_cByte _PyMa_huang[]="黄荒慌皇凰惶煌蝗磺簧恍晃谎幌";
_cByte _PyMa_hui[]="会恢回灰慧挥辉徽汇悔诲绘卉烩贿晦讳蛔秽惠毁";
_cByte _PyMa_hun[]="昏婚混荤浑魂";
_cByte _PyMa_huo[]="或货活火伙获祸惑霍豁";

_cByte _PyMa_j    []="九今及几家";
_cByte _PyMa_ji   []="己计记极基纪技际积继几及击急寂既寄讥饥圾机肌鸡迹姬绩缉畸箕稽激吉汲级即疾棘集嫉辑籍挤脊伎妓忌剂季济悸祭蓟冀藉";
_cByte _PyMa_jia[]="家加夹价驾佳假嘉颊甲贾钾架嫁枷稼荚挟";
_cByte _PyMa_jian []="见件间建简渐减奸尖坚歼肩艰兼监缄煎拣俭柬茧捡剪检硷碱饯剑荐贱健涧舰溅践笺鉴键箭";
_cByte _PyMa_jiang[]="江将浆姜讲奖降蒋匠疆桨僵酱";
_cByte _PyMa_jiao []="交觉叫郊较教饺娇浇骄胶椒角焦蕉礁狡绞矫脚铰搅剿缴轿窖酵嚼";
_cByte _PyMa_jie[]="阶借姐街介结节解界接皆届揭劫杰洁捷睫截竭戒秸芥疥诫";
_cByte _PyMa_jin[]="今近进斤紧仅尽巾劲津金筋襟谨锦晋浸烬禁靳";
_cByte _PyMa_jing []="京经净警景惊精睛竞竟敬井晶境静镜颈径痉茎靖兢鲸粳荆";
_cByte _PyMa_jiong[]="炯窘";
_cByte _PyMa_jiu[]="九就久酒旧究舅纠救揪咎疚灸玖韭臼厩";
_cByte _PyMa_ju   []="据句局拒距巨聚具桔菊拘剧驹居举鞠咀沮矩炬俱惧锯踞狙疽";
_cByte _PyMa_juan []="娟捐鹃卷倦绢眷";
_cByte _PyMa_jue[]="绝觉决抉诀倔掘爵撅攫";
_cByte _PyMa_jun[]="军君均钧竣俊峻骏菌郡浚";

_cByte _PyMa_k    []="开可快看况";
_cByte _PyMa_ka   []="卡咖喀咔";
_cByte _PyMa_kai[]="开揩凯慨楷忾";
_cByte _PyMa_kan[]="看砍刊坎勘堪槛侃瞰";
_cByte _PyMa_kang []="康慷糠扛亢抗炕伉";
_cByte _PyMa_kao[]="靠考拷烤犒";
_cByte _PyMa_ke   []="客科可克刻渴课棵颗壳恪咳坷苛珂柯嗑磕瞌";
_cByte _PyMa_ken[]="肯垦恳啃";
_cByte _PyMa_keng []="吭坑铿";
_cByte _PyMa_kong []="空孔恐控崆倥";
_cByte _PyMa_kou[]="口扣抠寇叩";
_cByte _PyMa_ku   []="哭库苦裤酷枯窟骷绔";
_cByte _PyMa_kua[]="夸垮挎胯跨";
_cByte _PyMa_kuai []="块快侩筷会脍";
_cByte _PyMa_kuan []="宽款";
_cByte _PyMa_kuang[]="框况狂邝矿筐旷眶诳诓匡";
_cByte _PyMa_kui[]="亏馈窥愧盔溃奎葵魁傀岿";
_cByte _PyMa_kun[]="坤昆捆困琨";
_cByte _PyMa_kuo[]="扩括阔廓";

_cByte _PyMa_l    []="了来拉老六";
_cByte _PyMa_la   []="啦拉垃喇腊蜡辣";
_cByte _PyMa_lai[]="来莱赖";
_cByte _PyMa_lan[]="兰篮蓝懒拦栏览揽烂婪阑谰澜缆滥";
_cByte _PyMa_lang []="郎狼廊琅榔朗浪";
_cByte _PyMa_lao[]="老捞劳牢佬姥涝烙酪";
_cByte _PyMa_le   []="了乐勒";
_cByte _PyMa_lei[]="类泪累雷蕾镭磊擂肋垒儡";
_cByte _PyMa_leng []="棱楞冷";
_cByte _PyMa_li   []="李理里立利丽例离力莉梨粒厘漓璃黎篱礼哩鲤历厉吏励沥隶俐荔栗砾犁傈痢狸";
_cByte _PyMa_lian []="连联脸怜练恋炼帘涟莲廉镰敛链";
_cByte _PyMa_liang[]="两俩良凉梁量亮辆谅粮粱晾";
_cByte _PyMa_liao []="了潦辽廖疗聊僚寥撩燎镣料撂";
_cByte _PyMa_lie[]="列劣烈猎裂咧";
_cByte _PyMa_lin[]="林临邻淋琳霖赁凛吝拎磷鳞";
_cByte _PyMa_ling []="另令零龄领铃伶灵岭凌菱玲陵羚";
_cByte _PyMa_liu[]="六刘流留溜柳榴硫馏瘤琉";
_cByte _PyMa_long []="龙笼隆聋垄窿陇拢咙";
_cByte _PyMa_lou[]="搂楼篓陋娄漏髅";
_cByte _PyMa_lu   []="卢录鲁陆露路庐炉颅芦鹿卤赂虏掳禄碌戮潞麓";
_cByte _PyMa_luan []="乱孪峦挛滦卵";
_cByte _PyMa_lue[]="略掠";
_cByte _PyMa_lun[]="抡论轮仑伦沦纶";
_cByte _PyMa_luo[]="罗萝洛络锣箩落骡螺逻裸骆";
_cByte _PyMa_lv   []="率吕侣绿旅律虑滤驴铝屡缕履氯";

_cByte _PyMa_m    []="妈吗嘛没们";
_cByte _PyMa_ma   []="妈吗嘛麻马玛码蚂骂";
_cByte _PyMa_mai[]="买卖迈麦埋脉";
_cByte _PyMa_man[]="蛮馒瞒满曼谩慢漫蔓";
_cByte _PyMa_mang []="忙芒盲茫莽氓";
_cByte _PyMa_mao[]="猫毛矛茅锚卯铆茂冒贸帽貌";
_cByte _PyMa_me   []="么";
_cByte _PyMa_mei[]="没每妹美枚玫眉梅媒煤酶霉镁昧媚寐";
_cByte _PyMa_men[]="们门闷懑";
_cByte _PyMa_meng []="梦猛萌孟盟檬蒙锰";
_cByte _PyMa_mi   []="秘密蜜米迷谜觅泌糜靡眯醚弥幂";
_cByte _PyMa_mian []="面免勉眠绵棉娩冕缅";
_cByte _PyMa_miao []="妙秒描苗瞄庙渺藐";
_cByte _PyMa_mie[]="灭乜蔑";
_cByte _PyMa_min[]="民敏皿抿闽悯玟";
_cByte _PyMa_ming []="明名命鸣铭螟冥";
_cByte _PyMa_miu[]="谬缪";
_cByte _PyMa_mo   []="莫摸模默抹摩磨蘑魔寞末膜貉墨摹沫陌漠";
_cByte _PyMa_mou[]="牟谋某眸";
_cByte _PyMa_mu   []="母木目牡亩幕睦慕牧姆拇募墓暮穆";

_cByte _PyMa_n    []="你哪那能年";
_cByte _PyMa_na   []="哪那拿纳娜钠呐";
_cByte _PyMa_nai[]="乃奶奈耐氖";
_cByte _PyMa_nan[]="男南难喃楠";
_cByte _PyMa_nang []="囊";
_cByte _PyMa_nao[]="挠恼脑闹淖";
_cByte _PyMa_ne   []="呢";
_cByte _PyMa_nei[]="内那馁";
_cByte _PyMa_nen[]="嫩恁";
_cByte _PyMa_neng []="能";
_cByte _PyMa_ni   []="你拟妮尼泥倪霓逆匿溺腻";
_cByte _PyMa_nian []="年念捻拈撵碾蔫";
_cByte _PyMa_niang[]="娘酿";
_cByte _PyMa_niao []="鸟尿";
_cByte _PyMa_nie[]="捏聂镊涅啮镍孽";
_cByte _PyMa_nin[]="您";
_cByte _PyMa_ning []="宁拧狞凝柠泞";
_cByte _PyMa_niu[]="牛扭纽钮";
_cByte _PyMa_nong []="弄农浓脓";
_cByte _PyMa_nu   []="怒努奴弩";
_cByte _PyMa_nuan []="暖";
_cByte _PyMa_nue[]="疟虐谑";
_cByte _PyMa_nuo[]="挪诺懦糯";
_cByte _PyMa_nv   []="女";

_cByte _PyMa_o    []="哦噢";
_cByte _PyMa_ou   []="欧殴鸥呕偶藕沤区";

_cByte _PyMa_p    []="怕拼彭潘朋";
_cByte _PyMa_pa   []="怕趴啪爬耙琶帕";
_cByte _PyMa_pai[]="拍徘排牌派湃";
_cByte _PyMa_pan[]="潘攀盘磐判叛盼畔";
_cByte _PyMa_pang []="乓庞旁耪胖";
_cByte _PyMa_pao[]="抛刨咆炮袍跑泡";
_cByte _PyMa_pei[]="胚陪培赔佩配裴沛呸";
_cByte _PyMa_pen[]="喷盆";
_cByte _PyMa_peng []="彭抨朋碰砰鹏烹棚硼蓬澎篷膨捧";
_cByte _PyMa_pi   []="皮批啤披脾疲劈霹僻譬毗琵匹辟坯痞屁砒";
_cByte _PyMa_pian []="片偏篇骗";
_cByte _PyMa_piao []="漂飘瓢票";
_cByte _PyMa_pie[]="撇瞥";
_cByte _PyMa_pin[]="拼贫频品聘";
_cByte _PyMa_ping []="乒平评凭坪苹屏瓶萍";
_cByte _PyMa_po   []="坡泼颇婆迫破粕魄";
_cByte _PyMa_pou[]="剖";
_cByte _PyMa_pu   []="扑铺仆普谱葡莆菩脯蒲朴圃埔浦曝";

_cByte _PyMa_q    []="七其请去却";
_cByte _PyMa_qi   []="七其齐气起妻企骑器岂期欺棋旗柒凄栖戚漆祁奇歧祈脐崎畦沏乞启讫迄弃汽泣契砌";
_cByte _PyMa_qia[]="掐恰洽";
_cByte _PyMa_qian []="千前钱欠谦签潜浅嵌歉仟扦迁钎牵铅钳乾黔遣谴堑";
_cByte _PyMa_qiang[]="强墙抢枪蔷羌腔呛";
_cByte _PyMa_qiao []="巧悄敲瞧桥窍翘橇乔侨俏峭锹撬鞘";
_cByte _PyMa_qie[]="切茄且怯窃";
_cByte _PyMa_qin[]="亲侵钦芹秦琴禽勤擒寝沁";
_cByte _PyMa_qing []="请青清情晴轻倾庆卿氰擎顷氢";
_cByte _PyMa_qiong[]="穷琼";
_cByte _PyMa_qiu[]="求球邱秋囚泅酋丘";
_cByte _PyMa_qu   []="去区趣取曲躯趋娶驱屈蛆渠龋";
_cByte _PyMa_quan []="全权圈劝泉拳痊醛颧犬券";
_cByte _PyMa_que[]="却确缺雀鹊瘸炔榷";
_cByte _PyMa_qun[]="裙群";

_cByte _PyMa_r    []="然人日如让";
_cByte _PyMa_ran[]="然燃冉染";
_cByte _PyMa_rang []="让嚷瓤壤攘";
_cByte _PyMa_rao[]="饶扰绕";
_cByte _PyMa_re   []="惹热";
_cByte _PyMa_ren[]="人认任仁壬忍刃纫妊韧";
_cByte _PyMa_reng []="扔仍";
_cByte _PyMa_ri   []="日";
_cByte _PyMa_rong []="荣容溶蓉融熔戎绒茸冗";
_cByte _PyMa_rou[]="柔揉肉";
_cByte _PyMa_ru   []="如入茹乳辱褥儒孺蠕汝";
_cByte _PyMa_ruan []="软阮";
_cByte _PyMa_rui[]="锐瑞蕊";
_cByte _PyMa_run[]="闰润";
_cByte _PyMa_ruo[]="若弱";

_cByte _PyMa_s    []="是上三什谁";
_cByte _PyMa_sa   []="撒洒萨";
_cByte _PyMa_sai[]="塞腮鳃赛";
_cByte _PyMa_san[]="三叁伞散";
_cByte _PyMa_sang []="桑嗓丧";
_cByte _PyMa_sao[]="搔骚扫嫂臊";
_cByte _PyMa_se   []="色涩啬瑟";
_cByte _PyMa_sen[]="森";
_cByte _PyMa_seng []="僧";
_cByte _PyMa_si   []="四司私思斯丝嘶撕死巳寺伺饲嗣肆";
_cByte _PyMa_song []="送松怂耸讼宋诵颂嵩";
_cByte _PyMa_sou[]="嗽搜艘擞";
_cByte _PyMa_su   []="速诉苏酥俗肃素粟塑溯僳";
_cByte _PyMa_suan []="酸蒜算";
_cByte _PyMa_sui[]="虽岁随碎穗遂髓绥隋祟隧";
_cByte _PyMa_sun[]="孙损笋";
_cByte _PyMa_suo[]="所锁缩索唆琐梭蓑";

_cByte _PyMa_t    []="她他它天太";
_cByte _PyMa_ta   []="她他它塌塔獭挞踏蹋";
_cByte _PyMa_tai[]="太胎台抬态泰苔汰酞";
_cByte _PyMa_tan[]="叹探谈谭摊滩瘫贪炭毯坛坍痰潭檀坦袒碳";
_cByte _PyMa_tang []="倘趟糖汤唐堂棠塘搪膛淌躺烫";
_cByte _PyMa_tao[]="讨萄涛桃绦套掏滔逃陶淘";
_cByte _PyMa_te   []="特";
_cByte _PyMa_teng []="疼腾誊藤";
_cByte _PyMa_ti   []="剔梯锑踢啼提题蹄体屉剃涕惕替嚏";
_cByte _PyMa_tian []="天添田恬甜填腆舔";
_cByte _PyMa_tiao []="调挑条迢眺跳";
_cByte _PyMa_tie[]="贴铁帖";
_cByte _PyMa_ting []="厅汀听烃廷亭庭停挺艇";
_cByte _PyMa_tong []="通同彤桐铜童酮瞳统捅桶筒痛";
_cByte _PyMa_tou[]="偷头投透";
_cByte _PyMa_tu   []="凸秃突图徒涂途屠土吐兔";
_cByte _PyMa_tuan []="湍团";
_cByte _PyMa_tui[]="推颓腿退蜕褪";
_cByte _PyMa_tun[]="囤吞屯臀";
_cByte _PyMa_tuo[]="托拖脱驮陀驼鸵妥椭拓唾";

_cByte _PyMa_w    []="我五无吴为";
_cByte _PyMa_wa   []="哇娃挖洼蛙瓦袜";
_cByte _PyMa_wai[]="外歪";
_cByte _PyMa_wan[]="弯湾豌丸完玩顽烷宛挽晚婉惋皖碗万腕纨";
_cByte _PyMa_wang []="往王网望忘汪亡枉妄旺";
_cByte _PyMa_wei[]="为危位喂威伟唯委维味韦围谓微违魏潍慰伪尾纬苇萎卫未畏胃尉渭惟桅蔚巍韪";
_cByte _PyMa_wen[]="文温闻问稳吻纹蚊紊瘟";
_cByte _PyMa_weng []="翁嗡瓮";
_cByte _PyMa_wo   []="我卧握挝涡窝蜗沃斡龌";
_cByte _PyMa_wu   []="五午吴误无务晤武侮巫屋污诬钨毋吾芜梧伍呜乌坞捂舞勿戊物悟雾";

_cByte _PyMa_x    []="下象想兴小";
_cByte _PyMa_xi   []="西细系息熄席牺惜吸悉戏洗习喜隙媳希昔溪夕汐析矽烯硒晰犀稀嘻膝袭锡熙檄";
_cByte _PyMa_xia[]="下吓夏虾瞎匣侠峡狭暇辖霞";
_cByte _PyMa_xian []="现先县线限献显险鲜嫌咸纤掀锨闲弦贤涎舷衔宪陷馅仙羡腺铣";
_cByte _PyMa_xiang[]="想象相项箱向像香响乡详祥厢巷翔湘享镶橡襄";
_cByte _PyMa_xiao []="小笑效肖消校销宵晓萧硝霄孝哮啸嚣淆";
_cByte _PyMa_xie[]="些写谢歇械斜携鞋协卸邪胁谐泄泻屑蝎懈蟹楔";
_cByte _PyMa_xin[]="心新薪信辛欣芯锌衅忻";
_cByte _PyMa_xing []="兴姓性形型刑幸星醒杏惺猩腥邢";
_cByte _PyMa_xiong[]="凶兄匈汹胸雄熊";
_cByte _PyMa_xiu[]="休修秀绣袖羞朽锈嗅宿";
_cByte _PyMa_xu   []="徐许须需续虚婿嘘吁绪旭序叙戌墟恤酗絮蓄";
_cByte _PyMa_xuan []="选宣喧旋玄轩悬绚癣眩";
_cByte _PyMa_xue[]="学雪血削穴薛靴";
_cByte _PyMa_xun[]="讯迅寻巡旬循勋熏驯询训汛逊殉";

_cByte _PyMa_y    []="一已呀也与";
_cByte _PyMa_ya   []="亚呀压牙涯哑雅讶押崖丫鸦鸭芽蚜衙";
_cByte _PyMa_yan[]="验言烟眼沿严掩颜淹咽燕研延岩宴艳演厌盐炎阎蜒奄彦砚唁谚焰雁衍焉堰阉";
_cByte _PyMa_yang []="样阳杨央洋仰养秧漾扬羊佯氧痒鸯疡殃";
_cByte _PyMa_yao[]="要钥姚摇遥药耀腰邀咬谣侥妖尧窑瑶舀";
_cByte _PyMa_ye   []="也爷页夜冶液野业叶噎椰曳掖腋耶";
_cByte _PyMa_yi   []="一以已亿医益谊亦依译仪沂宜忆艺姨移易遗疑衣乙矣蚁倚椅义议屹异役抑邑绎诣疫伊颐揖夷胰彝铱壹翌逸意溢肄裔毅翼臆";
_cByte _PyMa_yin[]="因音姻银引饮阴茵印吟尹隐荫殷淫寅";
_cByte _PyMa_ying []="应硬迎英影营映鹰盈荧莹樱婴蝇萤缨赢颖";
_cByte _PyMa_yo   []="哟";
_cByte _PyMa_yong []="用永拥勇咏佣泳涌恿雍臃蛹踊庸痈";
_cByte _PyMa_you[]="又有优由邮忧幽悠右友诱犹油游酉幼佑尤釉铀";
_cByte _PyMa_yu   []="与于欲语羽雨玉遇预鱼愈喻寓予余榆誉俞娱渔隅愉逾愚虞舆宇屿禹驭芋育郁狱峪浴域盂淤渝御裕迂豫";
_cByte _PyMa_yuan []="元员园远圆愿原院袁冤渊援缘源怨垣猿辕苑鸳";
_cByte _PyMa_yue[]="约月岳越阅悦跃粤曰";
_cByte _PyMa_yun[]="云匀郧耘允陨孕运晕酝韵蕴";

_cByte _PyMa_z    []="在再怎知则";
_cByte _PyMa_za   []="匝杂砸咋";
_cByte _PyMa_zai[]="再在灾载仔栽宰哉";
_cByte _PyMa_zan[]="咱攒暂赞";
_cByte _PyMa_zang []="赃脏葬藏";
_cByte _PyMa_zao[]="早造噪燥躁澡藻遭糟皂凿枣蚤灶";
_cByte _PyMa_ze   []="则择泽责";
_cByte _PyMa_zei[]="贼";
_cByte _PyMa_zen[]="怎";
_cByte _PyMa_zeng []="增赠憎";
_cByte _PyMa_zi   []="子自字资紫咨姿孜兹滋渍籽淄滓";
_cByte _PyMa_zong []="总纵宗踪综棕鬃";
_cByte _PyMa_zou[]="走邹奏揍";
_cByte _PyMa_zu   []="足组祖租阻族卒诅";
_cByte _PyMa_zuan []="钻赚纂";
_cByte _PyMa_zui[]="最嘴罪醉";
_cByte _PyMa_zun[]="尊遵";
_cByte _PyMa_zuo[]="昨做左佐作坐座";
_cByte _PyMa_zz   []=",。!?、;:“”‘’()…#¥%【】《》『』~◎×-+÷=§";

_cByte _PyMa_cha   []="插察查茶差叉茬搽碴岔诧刹";
_cByte _PyMa_chai[]="拆柴差豺";
_cByte _PyMa_chan[]="产缠掺搀谗馋蝉铲阐婵颤";
_cByte _PyMa_chang []="长常唱厂场昌尝偿猖肠敞畅倡";
_cByte _PyMa_chao[]="抄钞吵炒超巢朝嘲潮绰";
_cByte _PyMa_che   []="车扯彻掣撤澈";
_cByte _PyMa_chen[]="郴尘臣忱沉辰陈晨衬趁";
_cByte _PyMa_cheng []="称撑成呈承诚城乘惩程澄橙逞骋秤";
_cByte _PyMa_chi   []="吃痴弛池驰迟持尺侈齿耻斥赤炽翅";
_cByte _PyMa_chong []="重充冲虫崇宠铳";
_cByte _PyMa_chou[]="抽仇绸畴愁稠筹酬踌丑瞅臭";
_cByte _PyMa_chu   []="处出初除厨楚触锄础雏橱躇储搐矗畜滁";
_cByte _PyMa_chuai []="揣踹";
_cByte _PyMa_chuan []="穿传串船川椽喘";
_cByte _PyMa_chuang[]="闯窗床创疮";
_cByte _PyMa_chui[]="吹炊垂捶锤陲";
_cByte _PyMa_chun[]="春椿纯唇淳醇蠢";
_cByte _PyMa_chuo[]="戳绰辍";
_cByte _PyMa_sha   []="杀沙纱砂莎傻啥煞厦";
_cByte _PyMa_shai[]="筛晒";
_cByte _PyMa_shan[]="山衫闪陕删杉珊煽汕苫扇善缮擅膳赡栅";
_cByte _PyMa_shang []="上尚伤商墒裳晌赏";
_cByte _PyMa_shao[]="少捎梢烧稍勺芍韶邵绍哨";
_cByte _PyMa_she   []="设社舌蛇舍射涉奢赊赦慑摄";
_cByte _PyMa_shen[]="什深神申伸身婶肾甚呻绅娠砷沈审渗慎";
_cByte _PyMa_sheng []="生升省声胜盛剩牲甥绳圣";
_cByte _PyMa_shi   []="是十时似事式试实使示始市失释视适驶室师识史诗匙石拾世仕侍虱施狮湿蚀食矢屎士氏势饰恃拭尸柿逝嗜誓噬";
_cByte _PyMa_shou[]="收手守首寿受兽售授瘦";
_cByte _PyMa_shu   []="书数熟暑树束输术述抒叔舒枢殊属梳恕竖淑疏蔬孰赎黍署鼠蜀薯曙戍庶墅漱";
_cByte _PyMa_shua[]="刷耍唰";
_cByte _PyMa_shuai []="摔帅率衰甩";
_cByte _PyMa_shuan []="拴栓涮";
_cByte _PyMa_shuang[]="双霜爽孀";
_cByte _PyMa_shui[]="谁水税睡说";
_cByte _PyMa_shun[]="吮顺舜瞬";
_cByte _PyMa_shuo[]="说烁朔硕";
_cByte _PyMa_zha   []="诈炸榨扎喳渣札眨轧闸铡乍柞";
_cByte _PyMa_zhai[]="摘宅债寨斋翟窄";
_cByte _PyMa_zhan[]="展站战沾绽湛粘毡盏斩崭辗占栈詹瞻蘸";
_cByte _PyMa_zhang []="长张章彰漳樟涨掌丈仗帐杖胀账障瘴";
_cByte _PyMa_zhao[]="招昭找沼召兆赵照罩肇爪";
_cByte _PyMa_zhe   []="这者着浙遮哲折蛰辙锗蔗";
_cByte _PyMa_zhen[]="真针阵振镇诊侦珍枕帧斟震贞疹砧甄臻";
_cByte _PyMa_zheng []="正政整争证郑征挣睁拯蒸怔症狰";
_cByte _PyMa_zhi   []="之知支只止址至志直值置质智汁芝吱枝织肢脂蜘执侄职植殖旨纸指趾制帜治炙峙挚秩致掷痔窒滞稚";
_cByte _PyMa_zhong []="中众重钟忠衷终种肿仲盅";
_cByte _PyMa_zhou[]="州周皱粥洲昼轴肘帚咒宙诌舟骤";
_cByte _PyMa_zhu   []="住助注朱祝著主猪蛛竹株珠逐诸烛柱拄煮嘱瞩贮驻诛蛀筑铸";
_cByte _PyMa_zhua[]="抓";
_cByte _PyMa_zhuai []="拽";
_cByte _PyMa_zhuan []="专砖转撰篆";
_cByte _PyMa_zhuang[]="妆庄桩装壮状幢撞";
_cByte _PyMa_zhui[]="追椎锥坠缀赘";
_cByte _PyMa_zhun[]="谆准";
_cByte _PyMa_zhuo[]="捉桌浊卓拙灼茁酌啄琢";

_cByte _YunMu_none[]="    ";
_cByte _YunMu_a   []="a   ";
_cByte _YunMu_o   []="o   ";
_cByte _YunMu_e   []="e   ";
_cByte _YunMu_ai[]="ai";
_cByte _YunMu_ou[]="ou";
_cByte _YunMu_ei[]="ei";
_cByte _YunMu_ao[]="ao";
_cByte _YunMu_an[]="an";
_cByte _YunMu_en[]="en";
_cByte _YunMu_ang []="ang ";
_cByte _YunMu_eng []="eng ";
_cByte _YunMu_ong []="ong ";
_cByte _YunMu_i   []="i   ";
_cByte _YunMu_ia[]="ia";
_cByte _YunMu_ie[]="ie";
_cByte _YunMu_iao []="iao ";
_cByte _YunMu_iu[]="iu";
_cByte _YunMu_ian []="ian ";
_cByte _YunMu_in[]="in";
_cByte _YunMu_iang[]="iang";
_cByte _YunMu_ing []="ing ";
_cByte _YunMu_iong[]="iong";
_cByte _YunMu_u   []="u   ";
_cByte _YunMu_ua[]="ua";
_cByte _YunMu_ue[]="ue";
_cByte _YunMu_uo[]="uo";
_cByte _YunMu_uai []="uai ";
_cByte _YunMu_ui[]="ui";
_cByte _YunMu_uan []="uan ";
_cByte _YunMu_uang[]="uang";
_cByte _YunMu_un[]="un";
_cByte _YunMu_r   []="r   ";
_cByte _YunMu_v   []="v   ";
_cByte _YunMu_n   []="n   ";
_cByte _YunMu_ng[]="ng";
_cByte _YunMu_z   []="z   ";

_PyIndexType PyIndex_a[]=
{                                                  
        {_PyMa_a    ,_YunMu_none},
        {_PyMa_ai   ,_YunMu_i   },
        {_PyMa_an   ,_YunMu_n   },
        {_PyMa_aang ,_YunMu_ang },
        {_PyMa_aao,_YunMu_ao},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_b[]=
{
        {_PyMa_b    ,_YunMu_none},
        {_PyMa_ba   ,_YunMu_a   },
        {_PyMa_bai,_YunMu_ai},
        {_PyMa_ban,_YunMu_an},
        {_PyMa_bang ,_YunMu_ang },
        {_PyMa_bao,_YunMu_ao},
        {_PyMa_bei,_YunMu_ei},
        {_PyMa_ben,_YunMu_en},
        {_PyMa_beng ,_YunMu_eng },
        {_PyMa_bi   ,_YunMu_i   },
        {_PyMa_bian ,_YunMu_ian },
        {_PyMa_biao ,_YunMu_iao },
        {_PyMa_bie,_YunMu_ie},
        {_PyMa_bin,_YunMu_in},
        {_PyMa_bing ,_YunMu_ing },
        {_PyMa_bo   ,_YunMu_o   },
        {_PyMa_bu   ,_YunMu_u   },
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_c[]=
{
        {_PyMa_c    ,_YunMu_none},
        {_PyMa_ca   ,_YunMu_a   },
        {_PyMa_cai,_YunMu_ai},
        {_PyMa_can,_YunMu_an},
        {_PyMa_cang ,_YunMu_ang },
        {_PyMa_cao,_YunMu_ao},
        {_PyMa_ce   ,_YunMu_e   },
        {_PyMa_ceng ,_YunMu_eng },
        {_PyMa_ci   ,_YunMu_i   },
        {_PyMa_cong ,_YunMu_ong },
        {_PyMa_cou,_YunMu_ou},
        {_PyMa_cu   ,_YunMu_u   },
        {_PyMa_cuan ,_YunMu_uan },
        {_PyMa_cui,_YunMu_ui},
        {_PyMa_cun,_YunMu_un},
        {_PyMa_cuo,_YunMu_uo},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_d[]=
{
        {_PyMa_d    ,_YunMu_none},
        {_PyMa_da   ,_YunMu_a   },
        {_PyMa_dai,_YunMu_ai},
        {_PyMa_dan,_YunMu_an},
        {_PyMa_dang ,_YunMu_ang },
        {_PyMa_dao,_YunMu_ao},
        {_PyMa_de   ,_YunMu_e   },
        {_PyMa_deng ,_YunMu_eng },
        {_PyMa_di   ,_YunMu_i   },
        {_PyMa_dian ,_YunMu_ian },
        {_PyMa_diao ,_YunMu_iao },
        {_PyMa_die,_YunMu_ie},
        {_PyMa_ding ,_YunMu_ing },
        {_PyMa_diu,_YunMu_iu},
        {_PyMa_dong ,_YunMu_ong },
        {_PyMa_dou,_YunMu_ou},
        {_PyMa_du   ,_YunMu_u   },
        {_PyMa_duan ,_YunMu_uan },
        {_PyMa_dui,_YunMu_ui},
        {_PyMa_dun,_YunMu_un},
        {_PyMa_duo,_YunMu_uo},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_e[]=
{
        {_PyMa_e    ,_YunMu_none},
        {_PyMa_en   ,_YunMu_n   },
        {_PyMa_er   ,_YunMu_r   },
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_f[]=
{
        {_PyMa_f    ,_YunMu_none},
        {_PyMa_fa   ,_YunMu_a   },
        {_PyMa_fan,_YunMu_an},
        {_PyMa_fang ,_YunMu_ang },
        {_PyMa_fei,_YunMu_ei},
        {_PyMa_fen,_YunMu_en},
        {_PyMa_feng ,_YunMu_eng },
        {_PyMa_fo   ,_YunMu_o   },
        {_PyMa_fou,_YunMu_ou},
        {_PyMa_fu   ,_YunMu_u   },
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_g[]=
{
        {_PyMa_g    ,_YunMu_none},
        {_PyMa_ga   ,_YunMu_a   },
        {_PyMa_gai,_YunMu_ai},
        {_PyMa_gan,_YunMu_an},
        {_PyMa_gang ,_YunMu_ang },
        {_PyMa_gao,_YunMu_ao},
        {_PyMa_ge   ,_YunMu_e   },
        {_PyMa_gei,_YunMu_ei},
        {_PyMa_gen,_YunMu_en},
        {_PyMa_geng ,_YunMu_eng },
        {_PyMa_gong ,_YunMu_ong },
        {_PyMa_gou,_YunMu_ou},
        {_PyMa_gu   ,_YunMu_u   },
        {_PyMa_gua,_YunMu_ua},
        {_PyMa_guai ,_YunMu_uai },
        {_PyMa_guan ,_YunMu_uan },
        {_PyMa_guang,_YunMu_uang},
        {_PyMa_gui,_YunMu_ui},
        {_PyMa_gun,_YunMu_un},
        {_PyMa_guo,_YunMu_uo},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_h[]=
{
        {_PyMa_h    ,_YunMu_none},
        {_PyMa_ha   ,_YunMu_a   },
        {_PyMa_hai,_YunMu_ai},
        {_PyMa_han,_YunMu_an},
        {_PyMa_hang ,_YunMu_ang },
        {_PyMa_hao,_YunMu_ao},
        {_PyMa_he   ,_YunMu_e   },
        {_PyMa_hei,_YunMu_ei},
        {_PyMa_hen,_YunMu_en},
        {_PyMa_heng ,_YunMu_eng },
        {_PyMa_hong ,_YunMu_ong },
        {_PyMa_hou,_YunMu_ou},
        {_PyMa_hu   ,_YunMu_u   },
        {_PyMa_hua,_YunMu_ua},
        {_PyMa_huai ,_YunMu_uai },
        {_PyMa_huan ,_YunMu_uan },
        {_PyMa_huang,_YunMu_uang},
        {_PyMa_hui,_YunMu_ui},
        {_PyMa_hun,_YunMu_un},
        {_PyMa_huo,_YunMu_uo},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_j[]=
{
        {_PyMa_j    ,_YunMu_none},
        {_PyMa_ji   ,_YunMu_i   },
        {_PyMa_jia,_YunMu_ia},
        {_PyMa_jian ,_YunMu_ian },
        {_PyMa_jiang,_YunMu_iang},
        {_PyMa_jiao ,_YunMu_iao },
        {_PyMa_jie,_YunMu_ie},
        {_PyMa_jin,_YunMu_in},
        {_PyMa_jing ,_YunMu_ing },
        {_PyMa_jiong,_YunMu_iong},
        {_PyMa_jiu,_YunMu_iu},
        {_PyMa_ju   ,_YunMu_u   },
        {_PyMa_juan ,_YunMu_uan },
        {_PyMa_jue,_YunMu_ue},
        {_PyMa_jun,_YunMu_un},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_k[]=
{
        {_PyMa_k    ,_YunMu_none},
        {_PyMa_ka   ,_YunMu_a   },
        {_PyMa_kai,_YunMu_ai},
        {_PyMa_kan,_YunMu_an},
        {_PyMa_kang ,_YunMu_ang },
        {_PyMa_kao,_YunMu_ao},
        {_PyMa_ke   ,_YunMu_e   },
        {_PyMa_ken,_YunMu_en},
        {_PyMa_keng ,_YunMu_eng },
        {_PyMa_kong ,_YunMu_ong },
        {_PyMa_kou,_YunMu_ou},
        {_PyMa_ku   ,_YunMu_u   },
        {_PyMa_kua,_YunMu_ua},
        {_PyMa_kuai ,_YunMu_uai },
        {_PyMa_kuan ,_YunMu_uan },
        {_PyMa_kuang,_YunMu_uang},
        {_PyMa_kui,_YunMu_ui},
        {_PyMa_kun,_YunMu_un},
        {_PyMa_kuo,_YunMu_uo},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_l[]=
{
        {_PyMa_l    ,_YunMu_none},
        {_PyMa_la   ,_YunMu_a   },
        {_PyMa_lai,_YunMu_ai},
        {_PyMa_lan,_YunMu_an},
        {_PyMa_lang ,_YunMu_ang },
        {_PyMa_lao,_YunMu_ao},
        {_PyMa_le   ,_YunMu_e   },
        {_PyMa_lei,_YunMu_ei},
        {_PyMa_leng ,_YunMu_eng },
        {_PyMa_li   ,_YunMu_i   },
        {_PyMa_lian ,_YunMu_ian },
        {_PyMa_liang,_YunMu_iang},
        {_PyMa_liao ,_YunMu_iao },
        {_PyMa_lie,_YunMu_ie},
        {_PyMa_lin,_YunMu_in},
        {_PyMa_ling ,_YunMu_ing },
        {_PyMa_liu,_YunMu_iu},
        {_PyMa_long ,_YunMu_ong },
        {_PyMa_lou,_YunMu_ou},
        {_PyMa_lu   ,_YunMu_u   },
        {_PyMa_luan ,_YunMu_uan },
        {_PyMa_lue,_YunMu_ue},
        {_PyMa_lun,_YunMu_un},
        {_PyMa_luo,_YunMu_uo},
        {_PyMa_lv   ,_YunMu_v   },
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_m[]=
{
        {_PyMa_m    ,_YunMu_none},
        {_PyMa_ma   ,_YunMu_a   },
        {_PyMa_mai,_YunMu_ai},
        {_PyMa_man,_YunMu_an},
        {_PyMa_mang ,_YunMu_ang },
        {_PyMa_mao,_YunMu_ao},
        {_PyMa_me   ,_YunMu_e   },
        {_PyMa_mei,_YunMu_ei},
        {_PyMa_men,_YunMu_en},
        {_PyMa_meng ,_YunMu_eng },
        {_PyMa_mi   ,_YunMu_i   },
        {_PyMa_mian ,_YunMu_ian },
        {_PyMa_miao ,_YunMu_iao },
        {_PyMa_mie,_YunMu_ie},
        {_PyMa_min,_YunMu_in},
        {_PyMa_ming ,_YunMu_ing },
        {_PyMa_miu,_YunMu_iu},
        {_PyMa_mo   ,_YunMu_o   },
        {_PyMa_mou,_YunMu_ou},
        {_PyMa_mu   ,_YunMu_u   },
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_n[]=
{
        {_PyMa_n    ,_YunMu_none},
        {_PyMa_na   ,_YunMu_a   },
        {_PyMa_nai,_YunMu_ai},
        {_PyMa_nan,_YunMu_an},
        {_PyMa_nang ,_YunMu_ang },
        {_PyMa_nao,_YunMu_ao},
        {_PyMa_ne   ,_YunMu_e   },
        {_PyMa_nei,_YunMu_ei},
        {_PyMa_nen,_YunMu_en},
        {_PyMa_neng ,_YunMu_eng },
        {_PyMa_ni   ,_YunMu_i   },
        {_PyMa_nian ,_YunMu_ian },
        {_PyMa_niang,_YunMu_iang},
        {_PyMa_niao ,_YunMu_iao },
        {_PyMa_nie,_YunMu_ie},
        {_PyMa_nin,_YunMu_in},
        {_PyMa_ning ,_YunMu_ing },
        {_PyMa_niu,_YunMu_iu},
        {_PyMa_nong ,_YunMu_ong },
        {_PyMa_nu   ,_YunMu_u   },
        {_PyMa_nuan ,_YunMu_uan },
        {_PyMa_nue,_YunMu_ue},
        {_PyMa_nuo,_YunMu_uo},
        {_PyMa_nv   ,_YunMu_v   },
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_o[]=
{
        {_PyMa_o    ,_YunMu_none},
        {_PyMa_ou   ,_YunMu_u   },
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_p[]=
{
        {_PyMa_p    ,_YunMu_none},
        {_PyMa_pa   ,_YunMu_a   },
        {_PyMa_pai,_YunMu_ai},
        {_PyMa_pan,_YunMu_an},
        {_PyMa_pang ,_YunMu_ang },
        {_PyMa_pao,_YunMu_ao},
        {_PyMa_pei,_YunMu_ei},
        {_PyMa_pen,_YunMu_en},
        {_PyMa_peng ,_YunMu_eng },
        {_PyMa_pi   ,_YunMu_i   },
        {_PyMa_pian ,_YunMu_ian },
        {_PyMa_piao ,_YunMu_iao },
        {_PyMa_pie,_YunMu_ie},
        {_PyMa_pin,_YunMu_in},
        {_PyMa_ping ,_YunMu_ing },
        {_PyMa_po   ,_YunMu_o   },
        {_PyMa_pou,_YunMu_ou},
        {_PyMa_pu   ,_YunMu_u   },
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_q[]=
{
        {_PyMa_q    ,_YunMu_none},
        {_PyMa_qi   ,_YunMu_i   },
        {_PyMa_qia,_YunMu_ia},
        {_PyMa_qian ,_YunMu_ian },
        {_PyMa_qiang,_YunMu_iang},
        {_PyMa_qiao ,_YunMu_iao },
        {_PyMa_qie,_YunMu_ie},
        {_PyMa_qin,_YunMu_in},
        {_PyMa_qing ,_YunMu_ing },
        {_PyMa_qiong,_YunMu_iong},
        {_PyMa_qiu,_YunMu_iu},
        {_PyMa_qu   ,_YunMu_u   },
        {_PyMa_quan ,_YunMu_uan },
        {_PyMa_que,_YunMu_ue},
        {_PyMa_qun,_YunMu_un},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_r[]=
{
        {_PyMa_r    ,_YunMu_none},
        {_PyMa_ran,_YunMu_an},
        {_PyMa_rang ,_YunMu_ang },
        {_PyMa_rao,_YunMu_ao},
        {_PyMa_re   ,_YunMu_e   },
        {_PyMa_ren,_YunMu_en},
        {_PyMa_reng ,_YunMu_eng },
        {_PyMa_ri   ,_YunMu_i   },
        {_PyMa_rong ,_YunMu_ong },
        {_PyMa_rou,_YunMu_ou},
        {_PyMa_ru   ,_YunMu_u   },
        {_PyMa_ruan ,_YunMu_uan },
        {_PyMa_rui,_YunMu_ui},
        {_PyMa_run,_YunMu_un},
        {_PyMa_ruo,_YunMu_uo},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_s[]=
{
        {_PyMa_s    ,_YunMu_none},
        {_PyMa_sa   ,_YunMu_a   },
        {_PyMa_sai,_YunMu_ai},
        {_PyMa_san,_YunMu_an},
        {_PyMa_sang ,_YunMu_ang },
        {_PyMa_sao,_YunMu_ao},
        {_PyMa_se   ,_YunMu_e   },
        {_PyMa_sen,_YunMu_en},
        {_PyMa_seng ,_YunMu_eng },
        {_PyMa_si   ,_YunMu_i   },
        {_PyMa_song ,_YunMu_ong },
        {_PyMa_sou,_YunMu_ou},
        {_PyMa_su   ,_YunMu_u   },
        {_PyMa_suan ,_YunMu_uan },
        {_PyMa_sui,_YunMu_ui},
        {_PyMa_sun,_YunMu_un},
        {_PyMa_suo,_YunMu_uo},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_t[]=
{
        {_PyMa_t    ,_YunMu_none},
        {_PyMa_ta   ,_YunMu_a   },
        {_PyMa_tai,_YunMu_ai},
        {_PyMa_tan,_YunMu_an},
        {_PyMa_tang ,_YunMu_ang },
        {_PyMa_tao,_YunMu_ao},
        {_PyMa_te   ,_YunMu_e   },
        {_PyMa_teng ,_YunMu_eng },
        {_PyMa_ti   ,_YunMu_i   },
        {_PyMa_tian ,_YunMu_ian },
        {_PyMa_tiao ,_YunMu_iao },
        {_PyMa_tie,_YunMu_ie},
        {_PyMa_ting ,_YunMu_ing },
        {_PyMa_tong ,_YunMu_ong },
        {_PyMa_tou,_YunMu_ou},
        {_PyMa_tu   ,_YunMu_u   },
        {_PyMa_tuan ,_YunMu_uan },
        {_PyMa_tui,_YunMu_ui},
        {_PyMa_tun,_YunMu_un},
        {_PyMa_tuo,_YunMu_uo},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_w[]=
{
        {_PyMa_w    ,_YunMu_none},
        {_PyMa_wa   ,_YunMu_a   },
        {_PyMa_wai,_YunMu_ai},
        {_PyMa_wan,_YunMu_an},
        {_PyMa_wang ,_YunMu_ang },
        {_PyMa_wei,_YunMu_ei},
        {_PyMa_wen,_YunMu_en},
        {_PyMa_weng ,_YunMu_eng },
        {_PyMa_wo   ,_YunMu_o   },
        {_PyMa_wu   ,_YunMu_u   },
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_x[]=
{
        {_PyMa_x    ,_YunMu_none},
        {_PyMa_xi   ,_YunMu_i   },
        {_PyMa_xia,_YunMu_ia},
        {_PyMa_xian ,_YunMu_ian },
        {_PyMa_xiang,_YunMu_iang},
        {_PyMa_xiao ,_YunMu_iao },
        {_PyMa_xie,_YunMu_ie},
        {_PyMa_xin,_YunMu_in},
        {_PyMa_xing ,_YunMu_ing },
        {_PyMa_xiong,_YunMu_iong},
        {_PyMa_xiu,_YunMu_iu},
        {_PyMa_xu   ,_YunMu_u   },
        {_PyMa_xuan ,_YunMu_uan },
        {_PyMa_xue,_YunMu_ue},
        {_PyMa_xun,_YunMu_un},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_y[]=
{
        {_PyMa_y    ,_YunMu_none},
        {_PyMa_ya   ,_YunMu_a   },
        {_PyMa_yan,_YunMu_an},
        {_PyMa_yang ,_YunMu_ang },
        {_PyMa_yao,_YunMu_ao},
        {_PyMa_ye   ,_YunMu_e   },
        {_PyMa_yi   ,_YunMu_i   },
        {_PyMa_yin,_YunMu_in},
        {_PyMa_ying ,_YunMu_ing },
        {_PyMa_yo   ,_YunMu_o   },
        {_PyMa_yong ,_YunMu_ong },
        {_PyMa_you,_YunMu_ou},
        {_PyMa_yu   ,_YunMu_u   },
        {_PyMa_yuan ,_YunMu_uan },
        {_PyMa_yue,_YunMu_ue},
        {_PyMa_yun,_YunMu_un},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_z[]=
{
        {_PyMa_z    ,_YunMu_none},
        {_PyMa_za   ,_YunMu_a   },
        {_PyMa_zai,_YunMu_ai},
        {_PyMa_zan,_YunMu_an},
        {_PyMa_zang ,_YunMu_ang },
        {_PyMa_zao,_YunMu_ao},
        {_PyMa_ze   ,_YunMu_e   },
        {_PyMa_zei,_YunMu_ei},
        {_PyMa_zen,_YunMu_en},
        {_PyMa_zeng ,_YunMu_eng },
        {_PyMa_zi   ,_YunMu_i   },
        {_PyMa_zong ,_YunMu_ong },
        {_PyMa_zou,_YunMu_ou},
        {_PyMa_zu   ,_YunMu_u   },
        {_PyMa_zuan ,_YunMu_uan },
        {_PyMa_zui,_YunMu_ui},
        {_PyMa_zun,_YunMu_un},
        {_PyMa_zuo,_YunMu_uo},
        {_PyMa_zz   ,_YunMu_z   },
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_ch[]=
{
        {_PyMa_cha   ,_YunMu_a   },
        {_PyMa_chai,_YunMu_ai},
        {_PyMa_chan,_YunMu_an},
        {_PyMa_chang ,_YunMu_ang },
        {_PyMa_chao,_YunMu_ao},
        {_PyMa_che   ,_YunMu_e   },
        {_PyMa_chen,_YunMu_en},
        {_PyMa_cheng ,_YunMu_eng },
        {_PyMa_chi   ,_YunMu_i   },
        {_PyMa_chong ,_YunMu_ong },
        {_PyMa_chou,_YunMu_ou},
        {_PyMa_chu   ,_YunMu_u   },
        {_PyMa_chuai ,_YunMu_uai },
        {_PyMa_chuan ,_YunMu_uan },
        {_PyMa_chuang,_YunMu_uang},
        {_PyMa_chui,_YunMu_ui},
        {_PyMa_chun,_YunMu_un},
        {_PyMa_chuo,_YunMu_uo},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_sh[]=
{
        {_PyMa_sha   ,_YunMu_a   },
        {_PyMa_shai,_YunMu_ai},
        {_PyMa_shan,_YunMu_an},
        {_PyMa_shang ,_YunMu_ang },
        {_PyMa_shao,_YunMu_ao},
        {_PyMa_she   ,_YunMu_e   },
        {_PyMa_shen,_YunMu_en},
        {_PyMa_sheng ,_YunMu_eng },
        {_PyMa_shi   ,_YunMu_i   },
        {_PyMa_shou,_YunMu_ou},
        {_PyMa_shu   ,_YunMu_u   },
        {_PyMa_shua,_YunMu_ua},
        {_PyMa_shuai ,_YunMu_uai },
        {_PyMa_shuan ,_YunMu_uan },
        {_PyMa_shuang,_YunMu_uang},
        {_PyMa_shui,_YunMu_ui},
        {_PyMa_shun,_YunMu_un},
        {_PyMa_shuo,_YunMu_uo},
        {NULL      ,NULL}
};
_PyIndexTypePyIndex_zh[]=
{
        {_PyMa_zha   ,_YunMu_a   },
        {_PyMa_zhai,_YunMu_ai},
        {_PyMa_zhan,_YunMu_an},
        {_PyMa_zhang ,_YunMu_ang },
        {_PyMa_zhao,_YunMu_ao},
        {_PyMa_zhe   ,_YunMu_e   },
        {_PyMa_zhen,_YunMu_en},
        {_PyMa_zheng ,_YunMu_eng },
        {_PyMa_zhi   ,_YunMu_i   },
        {_PyMa_zhong ,_YunMu_ong },
        {_PyMa_zhou,_YunMu_ou},
        {_PyMa_zhu   ,_YunMu_u   },
        {_PyMa_zhua,_YunMu_ua},
        {_PyMa_zhuai ,_YunMu_uai },
        {_PyMa_zhuan ,_YunMu_uan },
        {_PyMa_zhuang,_YunMu_uang},
        {_PyMa_zhui,_YunMu_ui},
        {_PyMa_zhun,_YunMu_un},
        {_PyMa_zhuo,_YunMu_uo},
        {NULL      ,NULL}
};
_PyIndexType PyIndexPointer[]=
{
        PyIndex_a,
        PyIndex_b,
        PyIndex_c,
        PyIndex_d,
        PyIndex_e,
        PyIndex_f,
        PyIndex_g,
        PyIndex_h,
        PyIndex_i,
        PyIndex_j,
        PyIndex_k,
        PyIndex_l,
        PyIndex_m,
        PyIndex_n,
        PyIndex_o,
        PyIndex_p,
        PyIndex_q,
        PyIndex_r,
        PyIndex_s,
        PyIndex_t,
        PyIndex_u,
        PyIndex_v,
        PyIndex_w,
        PyIndex_x,
        PyIndex_y,
        PyIndex_z

};
unsigned char strncmp(unsigned char *str1,unsigned char *str2,unsigned char len)
{
        unsigned char i;
        for(i=0;i<len;i++)
        if(*str1++!=*str2++)
        return 0;
        return 1;
}
#define ucc unsigned char code
#define uic unsigned int code
unsigned char *GetPyIndex(unsigned char *str)
{
        unsigned char *p1;
        unsigned int*p2;
        unsigned char ch;
        unsigned char i;
        for(i=0;i<6;i++)
        if(*str)
        ch=*str++;
        else
        ch=' ';
        i=1;
        if(ch=='i'||ch=='u'||ch=='v')
        return 0;
        ch-='a';
        p2=(uic*)PyIndexPointer];

        if(ch=='h')
        {
                switch(ch)
                {
                        case ('c'-'a'):p2=&PyIndex_ch;
                        i=2;
                        break;
                        case ('s'-'a'):p2=&PyIndex_sh;
                        i=2;
                        break;
                        case ('z'-'a'):p2=&PyIndex_zh;
                        i=2;
                        break;                                                                          
                }
        }
        p2++;
//        p2=(uic*)*p2;
       
        p1=(ucc*)*p2;
        while(*p1!=NULL)
        {
                if(strncmp(p1,&ch,3))
                {
                        p2--;
                        p1=(ucc*)*p2;
                        return p1;
                }
                p2+=2;
                p1=(ucc*)*p2;
               
        }
        return p1;

}

//------------------------
#ifndef _PINYIN_H_
#define _PINYIN_H_

unsigned char strncmp(unsigned char *str1,unsigned char *str2,unsigned char len);
unsigned char *GetPyIndex(unsigned char *str);

#endif

tcpln 发表于 2011-10-13 22:45:48

强大,标记一下。

dongfo 发表于 2012-6-15 19:31:55

这个不错,值得一看。我本来以为相同字音是收索来的,原来是人工写上去的……好吧,

dongfo 发表于 2012-6-15 19:32:39

能不能讲一下大致的原理啊,大神

614229816 发表于 2012-6-18 10:30:44

标记一下,以后好用

James_King 发表于 2012-7-3 08:01:11

标记一下,以后好用

sn516952 发表于 2012-7-3 08:25:38

楼上的,借你的话一用.

hongyancl 发表于 2012-7-3 08:31:00

好东西,正好需要

sn516952 发表于 2012-7-3 08:38:31

请问这段要怎么看:

unsigned char strncmp(unsigned char *str1,unsigned char *str2,unsigned char len)
{
      unsigned char i;
      for(i=0;i<len;i++)
      if(*str1++!=*str2++)
      return 0;
      return 1;
}

能按这样理解吗?

unsigned char strncmp(unsigned char *str1,unsigned char *str2,unsigned char len)
{
      unsigned char i;
      for(i=0;i<len;i++)
       {
      if(*str1++!=*str2++)
      return 0;
       }
      return 1;
}

小@ 发表于 2012-7-3 11:23:08

菜鸟表示看不懂!

yangkuan85988 发表于 2012-7-3 13:15:23

求解释原理啊.....好难懂啊

lanzi3105 发表于 2012-7-4 20:06:05

谢谢分享

Doci 发表于 2012-7-11 22:13:47

拼音输入法。mark

zjk 发表于 2012-7-12 09:24:28

{:lol:}不错,很强大啊

wochai 发表于 2012-7-12 09:29:15

拼音输入法,强大的东西

whiff 发表于 2012-12-13 15:33:53

有联想功能,不错!

bbssilverkey 发表于 2012-12-18 09:47:18

怎么调用啊?

zcx2012 发表于 2012-12-18 11:55:58

虽然不懂,还是顶一下

eryueniao 发表于 2012-12-18 15:58:15

cool                                                            

itsun 发表于 2012-12-18 20:40:17

mark..正需要.....{:tongue:}

javabean 发表于 2012-12-18 22:15:23

有意思~单字输入法的核心是汉字的实际音数较少,所以处理表并不复杂,造词就会比较复杂了

853728579 发表于 2012-12-18 22:30:24

mark!!!!!!!!!

hamipeter 发表于 2012-12-18 22:40:36

这个拼音输入法好像在哪儿见过

hamipeter 发表于 2012-12-18 22:42:20

sn516952 发表于 2012-7-3 08:38
请问这段要怎么看:

unsigned char strncmp(unsigned char *str1,unsigned char *str2,unsigned char len)


两个写法一个意思,不过你的更醒目易读

stmmcu 发表于 2012-12-19 11:43:34

先收藏, 用到可以看

leicai05 发表于 2012-12-19 12:26:17

标记 拼音输入法

wubingqp 发表于 2012-12-19 12:31:02

强大mark

farmerzhangdl 发表于 2012-12-19 13:15:55

我记得原来做的输入法不是这么个写法来着,莫非当时写的是笔画输入法?记不得了,有空回去找找

zhengxg1990 发表于 2012-12-19 20:08:45

记得以前好像看过什么 T9输入法,貌似思路是一样的。

颜靖峰 发表于 2013-5-12 15:36:09

咋用啊,给个提示。

xianhuajun 发表于 2013-8-27 13:37:58

楼主太强了,支持

404710520 发表于 2013-8-27 13:48:03

MARK            

weimas 发表于 2013-8-27 14:43:19

牛人哪,mark

wtiechen1969 发表于 2013-8-27 20:41:23

很好,谢谢楼主分享

郭本宏 发表于 2013-9-2 11:01:49

看不懂,但顶楼主{:victory:}{:victory:}

ljmdzyx 发表于 2013-9-2 13:10:12

拼音输入法      

气球 发表于 2013-9-2 13:14:20

{:smile:}{:smile:}{:smile:}{:smile:}{:smile:}

主音调 发表于 2013-9-2 21:27:17

{:biggrin:}

18814888577 发表于 2013-10-5 11:31:15

和想象中的大相径庭,谢谢楼主,顶一下

lh5566 发表于 2013-10-5 12:36:10

偶哟 这个不错 很强大

zcmone 发表于 2018-5-15 17:00:18

和想象中的大相径庭

t3486784401 发表于 2018-5-16 01:07:01

数了数汉字有三千多,还真是可以工作的玩意。

收藏 + 学习了

cpholr1 发表于 2018-5-16 01:09:43

收藏 + 学习了

chinazhaoyl 发表于 2018-5-16 01:20:13

三千多汉字,日常够用的了。

Pioneermcu 发表于 2018-5-16 07:57:54

先收藏了,谢谢,日后可能用到

ljgchina 发表于 2018-5-17 13:20:41

谢谢分享!
页: [1]
查看完整版本: 发一个拼音输入法的源码