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

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

?? eb_structures.h

?? 某中文手寫輸入法公司的手寫識別輸入的實例源程序。
?? H
字號:
//Last Modify Date : 2003-5-6 17:02:37//: EB_structures.h : ErBiDigital public structures.#ifndef __EB_STRUCTURES_H_#define __EB_STRUCTURES_H_#include <string.h>#include "EB.h"//描述候選字詞的結構體typedef struct __candidate_info {     unsigned char inputLen;//輸入串的長度,不包括詞語輸入的分隔符, 0表示為當前輸入串的長度     unsigned char len;//詞語的長度     unsigned char start;//候選字詞在EBInputStruct::candidates的開始位置     unsigned char reserved;//暫時沒有使用} CandInfo;//描述每一次選擇候選字詞的結構體typedef struct __candidate_sel_info {     unsigned char inputLen;//輸入串的長度,不包括詞語輸入的分隔符     unsigned char outputLen;//對應候選詞的長度} CandSelInfo;//請注意:每加一個成員我們都需要修改EBDAssocInit, EBInputResettypedef struct __eb_input_struct{//in : can modified by user    unsigned char                           inputMethod ; //輸入法    unsigned char                           candidateDesireLen ; //用戶需要的候選字長度    unsigned char                           interpunctionDesireLen;//用戶需要的標點符號的長度    unsigned char                           inputStringLen ; //已輸入串長度    unsigned char                           inputString[EB_INPUT_MAX_LEN] ; //已輸入串[0~9,*]#define EB_PHRASE_MAX_LEN          10 //詞的最大長度#define EB_ASSOC_ISN_MAX_LEN      (EB_PHRASE_MAX_LEN - 1) //聯想字的最大長度    unsigned short                          associateISNs[EB_ASSOC_ISN_MAX_LEN] ; //聯想字    unsigned char                           tone ; //音調    unsigned char                           associateISNCount; //聯想字的個數    unsigned char                           syllableIndex ; //當前選擇的準確音節索引[1 -- 6]//out : can not modified by user/*  有字節對齊的問題,不能放在這#if  EBD_USE_DESIRE_COUNT > 0	unsigned char							candidateDesireCount;//指定輸出候選的個數,candidateLen是指候選的漢字的個數#endif*/    unsigned char                           candidateLen ; //實際長度    unsigned short                          candidates[EB_CANDIDATES_MAX_LEN] ;    //候選字// syllables以前為一個二維的輸入,現在為1維數組,同樣保存了各個音節,//但是為不定長的方式,各個音節的頭地址可以通過syllablesPointer數組的對應的值獲得,//獲取指定下標的音節//#define EBIS_GET_SYLLABLE(eb, i)     ((eb)->syllables + (eb)->syllablesPointer[i]) //獲取當前選擇的音節//#define EBIS_GET_SEL_SYLLABLE(eb)    //     ((eb)->syllableIndex == EB_NULL) ? NULL : EBIS_GET_SYLLABLE((eb), (eb)->syllableIndex - 1)//上面的兩個宏將幫助用戶獲取某一個特定音節    char                                    syllables[256] ;    unsigned short                          components[EB_COMPONENT_MAX_LEN] ; //部件    unsigned char                           syllableLen ; //syllables音節數量    unsigned char                           componentLen ; //components長度//ADD Date : 2003-10-27 15:44:38 by ABING    unsigned char                           noUseSmartPunc;    unsigned char                           noFirstKeyAssoc;//2.0//保存各個音節的對應syllables數組頭地址的偏移    unsigned char                           syllablesPointer[EB_SYLLABLE_MAX_SELECT];//保存各個候選字詞的信息,主要是對應輸入串的長度,以及字詞的長度    CandInfo                                cis[EB_CANDIDATES_MAX_LEN];//以下部分內容為EBHelper函數使用,主要是為了方便輸入法的集成//當前的整個輸入串    char                                    fullInputString[EB_INPUT_MAX_LEN + 1] ; //已輸入串[0~9,*]#if  EBD_USE_DESIRE_COUNT > 0	unsigned char							candidateDesireCount;//指定輸出候選的個數,candidateLen是指候選的漢字的個數#endif	//selInfo數組中有效的單元的數據    unsigned char                           selCount;    //當前的輸出字符串    unsigned short                          fullOutputString[EB_INPUT_MAX_LEN + 1] ; //輸出串[]//當前的各個候選字詞的選擇信息    CandSelInfo                             selInfo[EB_INPUT_MAX_LEN];} EBInputStruct, *pEBInputStruct ;typedef const EBInputStruct * pcEBInputStruct;//獲取指定下標的音節#define EBIS_GET_SYLLABLE(eb, i)        ((eb)->syllables + (eb)->syllablesPointer[i])//獲取當前選擇的音節#define EBIS_GET_SEL_SYLLABLE(eb)    \    (((eb)->syllableIndex == EB_NULL) ? NULL : EBIS_GET_SYLLABLE((eb), (eb)->syllableIndex - 1))//(僅用于繁體版)獲取指定下標的注音#define EBIS_GET_SYLLABLE_BPMF(eb, i)   ((const unsigned short *)EBIS_GET_SYLLABLE(eb, i))//(僅用于繁體版)獲取當前選擇的注音#define EBIS_GET_SEL_SYLLABLE_BPMF(eb)  ((const unsigned short *)EBIS_GET_SEL_SYLLABLE(eb))//Copy一個候選字到一個unsigned short的數組中,target為該數組。#define EBIS_COPY_CANDIDATE(target, eb, i)      \    memcpy((target), ((eb)->candidates + (eb)->cis[i].start), (eb)->cis[i].len * sizeof(short));\    (target)[(eb)->cis[i].len] = 0;    //INIT ...#define EBISInit(pEBIS) \        memset((void *)(pEBIS), EB_NULL, sizeof(EBInputStruct)) ;#define EBCleanCandidates(pEBIS) \    (pEBIS)->candidateLen = 0 ;\    memset((void *)(pEBIS)->candidates, EB_NULL, sizeof((pEBIS)->candidates)) ;#define EBCleanSyllables(pEBIS) \    (pEBIS)->syllableLen = 0 ; \    (pEBIS)->syllableIndex = 0 ; \    memset((void *)(pEBIS)->syllables, EB_NULL, sizeof((pEBIS)->syllables)) ;#define EBCleanComponents(pEBIS) \    (pEBIS)->componentLen = 0 ;\    memset((void *)(pEBIS)->components, EB_NULL, sizeof((pEBIS)->components)) ;//Macro : EBIsValidInputMethod :    Is valid Input Method ?#define EBIsValidInputMethod(im) \        ((im) >= EB_INPUT_METHOD_PINYIN && \         (im) <= EB_INPUT_METHOD_MAX)//Macro : EBHaveInput :                Have Input ?#define EBHaveInput(pEBIS) \        ((pEBIS)->inputStringLen > 0 && \         (pEBIS)->inputStringLen <= EB_INPUT_MAX_LEN)//Macro : EBIsValidTone :            Is valid Tone ?#define EBIsValidTone(pEBIS) \         (((pEBIS)->tone >= EB_TONE_1 && \         (pEBIS)->tone <= EB_TONE_6) || \        (pEBIS)->tone == EB_NULL)//Macro : EBCanSelectSyllables :    can select Syllables ?#define EBCanSelectSyllable(pEBIS) \        ((pEBIS)->syllableLen > 0 && \         (pEBIS)->syllableLen <= EB_SYLLABLE_MAX_SELECT)//Macro : EBHaveComponents :        have Components ?#define EBHaveComponents(pEBIS) \        ((pEBIS)->componentLen > 0 && \         (pEBIS)->componentLen <= EB_COMPONENT_MAX_LEN)//Macro : EBHaveCandidates :        have Candidates ?#define EBHaveCandidates(pEBIS) \        ((pEBIS)->candidateLen > 0 && \         (pEBIS)->candidateLen <= EB_CANDIDATES_MAX_LEN)//Macro : EBIsValidDesireLen :        Is valid candidate desire len ?#define EBIsValidDesireLen(pEBIS) \        ((pEBIS)->candidateDesireLen > 0 && \         (pEBIS)->candidateDesireLen <= EB_CANDIDATES_MAX_LEN)//Macro : EBIsValidSyllableIndex :    Is valid syllableIndex ?#define EBIsValidSyllableIndex(pEBIS) \        ((pEBIS)->syllableIndex > 0 && \         (pEBIS)->syllableIndex <= (pEBIS)->syllableLen)#endif    //__EB_STRUCTURES_H_

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产一区二区三区香蕉| 午夜精品久久一牛影视| 午夜精品久久久久久不卡8050| 国产在线一区二区| 欧美日韩三级在线| 亚洲欧洲日韩在线| 国产在线精品一区二区夜色| 欧美日韩激情一区二区三区| 亚洲欧洲另类国产综合| 裸体一区二区三区| 欧美人与性动xxxx| 一区二区三区.www| av网站免费线看精品| 欧美精品一区二区三区在线播放| 亚洲香蕉伊在人在线观| 成人aa视频在线观看| 国产欧美一区二区精品忘忧草| 蜜桃av一区二区三区电影| 欧美调教femdomvk| 亚洲午夜在线电影| 日本高清成人免费播放| 亚洲色图视频网| 国产91丝袜在线观看| 久久综合久久综合亚洲| 另类小说视频一区二区| 欧美一区二区网站| 日韩国产一二三区| 91精品国产综合久久久久久漫画| 亚洲国产裸拍裸体视频在线观看乱了| 91国产福利在线| 亚洲一区在线播放| 久久久久久**毛片大全| 中文字幕一区二区三区精华液| 乱中年女人伦av一区二区| 在线不卡一区二区| 亚洲成人黄色小说| 欧美日本高清视频在线观看| 午夜久久久久久久久| 91.麻豆视频| 蜜臀久久久久久久| 精品久久免费看| 国产精品伊人色| 国产欧美视频一区二区三区| 不卡av免费在线观看| 亚洲欧美日韩一区二区| 色国产综合视频| 三级精品在线观看| 2020国产精品久久精品美国| 国产精品12区| 樱花草国产18久久久久| 欧美日韩激情在线| 中文字幕五月欧美| 久久中文字幕电影| 国产精品亚洲成人| 国产女人aaa级久久久级| 91丨porny丨在线| 天天综合网 天天综合色| 日韩一区二区三| 成人午夜伦理影院| 亚洲五月六月丁香激情| 日韩亚洲欧美一区二区三区| 国产乱码精品一区二区三| 亚洲精品视频一区| 日韩免费看的电影| 99re成人精品视频| 日日摸夜夜添夜夜添亚洲女人| 久久综合久色欧美综合狠狠| 色综合久久综合| 麻豆一区二区三| 亚洲人成网站影音先锋播放| 欧美一区二区三区影视| av成人老司机| 狂野欧美性猛交blacked| 蜜桃视频在线观看一区| 精品国产一二三| 91原创在线视频| 久久电影网站中文字幕 | 中文字幕一区二区三区在线播放| 欧美性欧美巨大黑白大战| 久草这里只有精品视频| 亚洲欧美国产77777| 久久久蜜臀国产一区二区| 一本高清dvd不卡在线观看| 久久99精品国产| 亚洲1区2区3区4区| 1区2区3区欧美| 久久久久久久久久电影| 欧美肥胖老妇做爰| 日本精品一区二区三区高清 | 国产欧美一二三区| 色菇凉天天综合网| 国产精品一区二区无线| 亚洲在线视频网站| 国产精品久久久一本精品| 日韩视频永久免费| 欧美日韩免费在线视频| 成人av在线一区二区| 国内一区二区视频| 美洲天堂一区二卡三卡四卡视频| 伊人开心综合网| 国产精品人成在线观看免费| 欧美精品一区二| 欧美成人精精品一区二区频| 欧美挠脚心视频网站| 一本色道综合亚洲| 丁香亚洲综合激情啪啪综合| 久久99精品视频| 久久99精品国产.久久久久久| 日本三级韩国三级欧美三级| 亚洲一区二三区| 蜜臀久久久久久久| 在线不卡欧美精品一区二区三区| 成人黄色国产精品网站大全在线免费观看 | 亚洲午夜久久久久| 亚洲色图制服诱惑 | 国产午夜亚洲精品羞羞网站| 日韩精品一区二区三区四区视频| 欧美日韩久久一区二区| 色欲综合视频天天天| 91丨porny丨户外露出| jvid福利写真一区二区三区| 成年人午夜久久久| 91香蕉视频黄| 一本色道久久综合亚洲91| 制服丝袜av成人在线看| 在线观看网站黄不卡| 精品一区中文字幕| 日本不卡高清视频| 精品亚洲免费视频| 国产精品资源在线| 国产成人在线视频网址| 国产成人亚洲综合a∨婷婷图片| 丁香六月久久综合狠狠色| 成人伦理片在线| 91国产成人在线| 欧美一区二区高清| 久久精品夜色噜噜亚洲aⅴ| 中文字幕中文字幕一区二区 | 中文无字幕一区二区三区| 中文字幕中文在线不卡住| 亚洲国产视频一区二区| 三级不卡在线观看| 国产精品一品二品| 色菇凉天天综合网| 精品国产欧美一区二区| 亚洲欧洲日韩女同| 青青草国产成人99久久| 丁香婷婷综合网| 欧美图区在线视频| 国产欧美日韩综合| 日韩中文字幕一区二区三区| 国产精品88av| 6080yy午夜一二三区久久| 国产三级欧美三级日产三级99| 一区二区三区四区视频精品免费| 青娱乐精品在线视频| 波多野结衣中文字幕一区| 欧美精品一二三| 久久精品视频一区| 亚洲成a人片在线不卡一二三区| 久久国产精品露脸对白| 精品国产乱码久久久久久蜜臀 | 欧美视频在线一区| 久久综合给合久久狠狠狠97色69| 亚洲欧美日韩久久精品| 国产一区二区三区av电影| 91麻豆福利精品推荐| 久久久久久久综合日本| 成人黄色国产精品网站大全在线免费观看| 91高清视频在线| 国产精品伦理一区二区| 免费xxxx性欧美18vr| 在线观看日韩av先锋影音电影院| 欧美mv日韩mv国产网站app| 亚洲欧美二区三区| 国产成人综合在线| 制服丝袜激情欧洲亚洲| 一二三区精品视频| 不卡电影一区二区三区| 精品乱码亚洲一区二区不卡| 亚洲午夜久久久久久久久电影院 | 国产风韵犹存在线视精品| 7777精品久久久大香线蕉| 亚洲视频免费在线观看| 国产成人精品一区二区三区网站观看| 91精品国产综合久久久蜜臀图片| 亚洲综合精品久久| 99麻豆久久久国产精品免费优播| 2021国产精品久久精品| 精品一区二区综合| 日韩欧美卡一卡二| 日本中文在线一区| 欧美精品三级日韩久久| 亚洲国产精品天堂| 色88888久久久久久影院按摩| 国产精品国产三级国产专播品爱网 | 国产午夜精品美女毛片视频| 亚洲1区2区3区视频| 欧美亚洲综合另类| 一区二区三区精品在线观看|