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

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

?? diction.h

?? 計算機英漢機器翻譯系統中的英語詞性標注方法實現
?? H
?? 第 1 頁 / 共 2 頁
字號:

#ifndef PHRASE_H
#define PHRASE_H

#include "isammgr.h"
#include "DictMent.h"
#include "Huffman.h"

const int MAX_FILENAME_LEN = 100;
const int MAX_DICTLINE_LEN = 300;

const int DIC_WORD_LEN = 26; // 關鍵字的最大長度

const int DIC_OFFSET_LEN = 6; // 詞條的內容保存的位置

const WORD RULE_CODE = 0xffff; // 詞典中規則編碼的保存標志
const WORD ADDQUALFR = 0xfffe; // 詞典中量詞編碼的保存標志

const int SEARCH_ALLSAME = 0; // 嚴格匹配,查不到返回
const int SEARCH_FIRSTCH = 1; // 查不到,將第一個字母變成小寫再查
const int SEARCH_ALLCH   = 2; // 查不到,將全部字母變成小寫再查
 
// DTA文件中每個記錄的長度
const int DIC_DTA_ITEM_LEN = DIC_OFFSET_LEN;

//yys 98.7.22 Bgn
const int SYSDICT = 1;		//系統詞典代碼
const int ADDTIONDICT = 2;		//附加詞典代碼
const int USERDICT = 3;		//用戶詞典代碼
//yys 98.7.22 End

class SlotDecode {
public:
	SlotDecode();
	~SlotDecode();
	BOOL Init(LPSTR pszCodeTableName);
	void FreeMap(CMapStringToOb &mapName);
	void Exit();

	CStringArray m_astrCodeTable;
	CMapStringToOb m_mapCodeTable;

	int m_nTableSize;
	BOOL Decode(WORD wCode,CString &strOrigin);
	WORD EnCode(LPCSTR pszSlot);
};

class Dictionary : public IsamMgr
{
protected:

	virtual void read_data(void *block);
	virtual void write_data(void *block);
	virtual void fill_buffer(int idxno, long recno);
public:
	char *GetKeyWord() {
		return ifile[curidx]->GetNode()->get_cur_item(m_pszWord);
	}

	//Dictionary(int isMode = moOpen);
	Dictionary(char *dfname, char *ifname, int isMode = moOpen);
	~Dictionary(void) { delete idxfname; }
	void clear_buf(void);
	int GetKeyWordLen();

	char m_pszWord[DIC_WORD_LEN];
	char m_pszOffset[DIC_OFFSET_LEN];
};

// 說明:
// 編碼后的詞典的存儲格式:
// 在IDX文件中存放英文單詞,以HUFFMAN壓縮,壓縮后的最大長度為DIC_WORD_LEN,
// 超過這個長度的單詞將被忽略,不加入到目標詞典中
// 在DTA文件中保存的是:
//   m_pszOffset 上面是單詞的譯文及其他信息保存在
// DAT文件中的偏移位置
// DAT每個字段的文件結構:
// 最初的兩個字節保存上面提到的余下部分的長度,
// 后面緊跟余下部分

// 單詞的譯文及其他信息的保存格式:
// 標志:
// 是否存在原形 ( 1 Byte )	m_bIsExistOrig
// 詞的類型:過去式,進行式...(1 Byte) m_nWordStyle
// 原形長度 ( 1 Byte )
// 是否存在兼類(1Byte)
// 兼類的類型(1Byte)

const int DICT_FLAG_ORIGIN = 0; // 原形
const int DICT_FLAG_AMBIG = 1; // 兼類
const int DICT_FLAG_CHINESE = 2; // 中文部分

////////////////////////////////////////////////
//                                            //
//  			保存格式說明				  //
//											  //
////////////////////////////////////////////////
/*
typedef struct DictRecord{
	UCHAR m_byMaxPhraseLen;	//如果 m_pszEnglish為一個單詞,記錄短語第一個為該詞的短語最大長度
	BOOL m_bIsExistOrig;// 是否存在原形 ( 1 Byte )
	BOOL m_bIsExistAmbig; // 是否存在兼類
	// 下面緊跟一個標志和標志相關的其他內容,參考下面說明
	// 原形的存儲
	BYTE m_cFlag = DICT_FLAG_ORIGIN; // 緊接后面存儲內容的標志
	BYTE m_cWordStyle;// 詞的類型:過去式,進行式...(1 Byte) m_nWordStyle
	BYTE m_cOrigLen; // 原形長度 ( 1 Byte )
	LPSTR m_pszOrig; // 原形

	// 兼類的存儲
	BYTE m_cFlag = DICT_FLAG_AMBIG; // 緊接后面存儲內容的標志
	BYTE m_cAmbigLen; // 兼類長度
	LPSTR m_pszAmbig; // 兼類內容

	// 中文譯文和相關信息的存儲
	BYTE m_cFlag = DICT_FLAG_CHINESE; // 緊接后面存儲內容的標志
	BYTE m_cChinPartNum; // 中文譯文的個數
	// 后面依次保存每個中文譯文及相關內容,對于每個譯文,保存方式如下:
	BYTE m_cChineseLen; //中文譯文長度
	LPSTR m_pszChinese; // 中文譯文
	BYTE m_cCate; // 詞性
	BYTE m_cHead; // 語義大類
	BYTE m_cSlotNum; // 槽的數量,將規則和量詞也計算在內
	
	// 下面依次保存各個槽的信息
	WORD m_wSlotName&Value; // 槽名和槽值的統一編碼值
	如果m_wSlotName&Value的值是RULE_CODE或ADDQUALFR,則不是下面內容為規則
	或量詞,保存格式為:
	offset 0: 長度
	offset 1 - 上面長度: 規則或量詞的內容
} DictRecord;
*/
const int MAX_RECORD_LEN = 2000;

typedef struct tagDictHeader{
	char szMagic[150];
	char szReserved[50];
	int nTotalRuleNum;

	int nHashTableOffset;
	int nHashTableSize;
} DictHeader;

const char szDictDataMagic[] = "WebTran Dict Data File.Designed by Cai Meng e-mail:caim@mtlab.hit.edu.cn        ";
const int BYTES_BIT_NUM = 8;

class CDictIndex {
public:
	CDictIndex();
	~CDictIndex();
	LPSTR m_pszWordInfoBuff;
	int m_nWordInfoBuffSize;

protected:
	CMapStringToOb m_mapCate; // Cate 的種類
	CMapStringToOb m_mapHead; // Head 的種類
	CMapStringToOb m_mapAmbig; // 兼類的種類
	CMapStringToOb m_mapNoValueSlot; // 沒有槽值的槽的種類
	
	int m_nSlotNameNum; // 槽名的數量
	CStringArray m_arraySlotName; // 槽名的種類
	CMapStringToOb m_mapSlotName; // 槽名的種類
	CMapStringToOb m_mapSlotValue[100]; // 槽值
	int m_nDefineValue;
	char m_szSegmentName[50];
	int m_nQualfrCode; // 量詞的編碼

public:
	int m_nTotalWordsNum; // 索引中的詞條總數

	BOOL FillMap(CMapStringToOb &mapName,FILE *fpInDefine,
					FILE *fpOutDefine,FILE *fpCodeTable,BOOL bWrtSegName);
	BOOL FillMapWithArray(CMapStringToOb &mapName,
								CStringArray &arrayName,
								int &nNameNum,FILE *fpInDefine,
								FILE *fpOutDefine);
	BOOL BuildIndexInit(LPSTR pszDefineName,LPSTR pszOutDefineName,
						LPSTR pszCodeTable);
	void FreeMap(CMapStringToOb &mapName);
	void BuildIndexExitInit();

	int EncodeSingleSlot(Slot *pSlot,LPSTR pszSingleSlot);
	int EncodeSlotLink(Slot *pFirstSlot,LPSTR pszSlotLink);
	int CalculateSlotNum(Slot *pFirstSlot);
	int EncodeSingleChinesePart(ChinesePart *pCurrChinese,
							LPSTR pszSinglePartInfo);
	int EncodeChinesePartInfo(COneWord *pOneWord,LPSTR pszChinesePartInfo);
	int CalcuChinPartNum(ChinesePart *pFirstChinese);
	int EncodeDictRecord(COneWord *pOneWord,LPSTR pszWordInfo);
	BOOL InsertOneWordToIndex(Dictionary *pobDiction,
									  FILE *fpIndexDat,
									  CHuffman *pHuffman,
									  COneWord *pOneWord);
	BOOL OutputOneWordToTempDatFile(FILE *fpEnglishInfo,
									FILE *fpTranDat,
									COneWord *pOneWord);

	BOOL SearchInit();
};

typedef struct DictChin {
	LPSTR m_pszChinese; // 中文譯文
	int m_nChineseLen; // 中文譯文長度
	int m_nCate; // 詞性
	int m_nHead; // 語義大類
	
	int m_nSlotNum;
	LPWORD m_pwSlotLink;
	DictChin *m_pNextChin;

	LPSTR m_pszQualfr; // 量詞
	int m_nQualfrLen;
	LPSTR m_pszDicRule;//規則
	// 規則格式:(根據xuned于1997.10.25的要求)
	//規則個數(1 byte),規則左部的長度(1 byte),規則左部,
	//規則右部的長度(1 byte),規則右部,
	int m_nDicRule; // 規則信息的長度
	//XUNED ADD END
	DictChin();
	~DictChin();
	//XUNED ADD END
} DictChin;

typedef struct DictNode {
	LPSTR m_pszEnglish; // 英文
	int m_nEnglishLen; //  英文長度
	BOOL m_bIsExistOrig; // 是否存在原形
	LPSTR m_pszOrig; // 原形,必須申請空間
	int m_nOrigLen;
	int m_nWordStyle; // 詞的類型:過去式,進行式,
	BOOL m_bIsExistAmbig; // 是否存在兼類
	LPSTR m_pszAmbig; // 兼類內容
	int m_nAmbigLen;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产91对白在线观看九色| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 丁香一区二区三区| 欧美日韩你懂的| 国产精品你懂的在线欣赏| 亚洲一区二区三区精品在线| 国产一区二区三区蝌蚪| 欧美视频一区二区三区在线观看| 国产欧美一区二区精品性色 | 91小视频免费观看| 精品福利一二区| 亚洲福利一区二区三区| 91视频你懂的| 国产精品美女久久久久久久网站| 久久丁香综合五月国产三级网站| 欧美日韩国产首页| 亚洲精品国久久99热| 成人av中文字幕| 国产婷婷色一区二区三区四区| 日本三级韩国三级欧美三级| 欧美无砖专区一中文字| 亚洲另类一区二区| 色综合视频一区二区三区高清| 国产精品美女久久久久av爽李琼| 国产剧情在线观看一区二区| 精品免费一区二区三区| 日韩在线观看一区二区| 欧美人体做爰大胆视频| 亚洲va韩国va欧美va| 欧美偷拍一区二区| 亚洲午夜av在线| 欧美疯狂做受xxxx富婆| 丝袜美腿一区二区三区| 91.成人天堂一区| 免费在线成人网| 精品区一区二区| 国产高清精品网站| 久久久亚洲精品石原莉奈 | 国产亚洲一区字幕| 国产suv精品一区二区883| 国产女同性恋一区二区| 不卡电影一区二区三区| 国产精品午夜春色av| 99精品视频在线免费观看| 国产精品久久久久一区| 色婷婷精品久久二区二区蜜臀av| 一区二区三区不卡在线观看| 欧美日韩精品系列| 黄页网站大全一区二区| 国产精品私房写真福利视频| 色婷婷综合久久久中文字幕| 三级精品在线观看| 精品国产3级a| 色综合欧美在线视频区| 青青草国产成人99久久| 久久久久久99久久久精品网站| www.欧美.com| 偷窥少妇高潮呻吟av久久免费| 精品久久人人做人人爽| 成人免费毛片aaaaa**| 亚洲综合久久av| 精品久久久久久亚洲综合网| 成人黄动漫网站免费app| 亚洲成人资源在线| 久久综合久色欧美综合狠狠| 91在线视频播放地址| 日本美女一区二区三区| 中文字幕巨乱亚洲| 欧美日本韩国一区二区三区视频| 国产原创一区二区| 亚洲综合在线电影| 精品国产免费久久| 欧美性大战xxxxx久久久| 国产一区二区三区久久悠悠色av| 亚洲自拍偷拍图区| 国产亚洲一区二区三区在线观看 | 国产精品一区免费在线观看| 一区二区三区精品视频| 精品美女在线观看| 欧美亚洲高清一区二区三区不卡| 国产一区二区三区四区五区入口| 一区二区三区四区在线免费观看| 欧美精品一区二区三区蜜桃| 欧美三级电影在线看| 成人av中文字幕| 精品一区精品二区高清| 亚洲国产精品一区二区久久 | 一区视频在线播放| 欧美va在线播放| 在线一区二区三区四区五区| 韩国v欧美v亚洲v日本v| 亚洲电影激情视频网站| 国产精品久久久久久久久免费桃花 | 欧美在线视频日韩| 成人小视频在线观看| 久久99久国产精品黄毛片色诱| 亚洲自拍另类综合| 成人欧美一区二区三区| 国产女同性恋一区二区| 久久免费看少妇高潮| 日韩一区二区三区在线视频| 欧美三级日韩三级| 欧美在线999| 色综合视频一区二区三区高清| 成人91在线观看| 国产成人自拍网| 国产乱妇无码大片在线观看| 精品一区二区三区香蕉蜜桃| 日本不卡一区二区三区高清视频| 亚洲一区二区三区四区五区中文| 亚洲人妖av一区二区| 中文字幕亚洲成人| 综合在线观看色| 日韩伦理av电影| 亚洲精品国产视频| 亚洲蜜臀av乱码久久精品| 亚洲视频狠狠干| 亚洲美女一区二区三区| 亚洲综合成人网| 亚洲成av人影院在线观看网| 午夜精品久久久久久久99樱桃| 亚洲成人午夜电影| 香港成人在线视频| 蜜臀精品久久久久久蜜臀| 国产中文一区二区三区| 国产精品12区| 99re成人精品视频| 欧洲av一区二区嗯嗯嗯啊| 精品视频资源站| 91精品国产色综合久久不卡电影| 日韩丝袜情趣美女图片| 亚洲精品一区二区三区福利| 国产精品女主播av| 一区二区激情小说| 久久精品国产免费| 国产99久久精品| 日本乱人伦一区| 日韩一区二区在线观看视频| 久久天堂av综合合色蜜桃网| 欧美国产一区二区| 夜夜揉揉日日人人青青一国产精品| 五月天久久比比资源色| 国产真实乱对白精彩久久| 成人晚上爱看视频| 欧美三片在线视频观看| 久久综合九色欧美综合狠狠| 国产精品人妖ts系列视频| 亚洲一二三区在线观看| 另类小说视频一区二区| 成人性生交大片免费看视频在线| 欧美影院精品一区| 精品久久久久久综合日本欧美| 1区2区3区国产精品| 亚洲www啪成人一区二区麻豆| 国产综合色在线视频区| 色综合天天在线| 精品国产乱码久久久久久蜜臀| 中文字幕一区二区三区在线播放| 天堂久久久久va久久久久| 国产999精品久久久久久| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 日韩免费观看2025年上映的电影| 中文字幕亚洲一区二区av在线 | 一区二区成人在线| 日韩精品一级二级 | 91影院在线观看| 日韩视频国产视频| 国产精品夫妻自拍| 久久精品国产99国产| 色婷婷综合视频在线观看| 久久久美女艺术照精彩视频福利播放| 夜夜嗨av一区二区三区四季av| 国产一区美女在线| 91精品国产综合久久精品性色 | 亚洲伦理在线精品| 国产乱码一区二区三区| 91.麻豆视频| 亚洲一区二区三区在线看| www.欧美色图| 久久久久国产精品麻豆| 日本亚洲天堂网| 精品1区2区3区| 欧美三片在线视频观看| 在线观看三级视频欧美| 久久久久久久一区| 日本中文字幕一区二区有限公司| eeuss国产一区二区三区| 久久―日本道色综合久久| 日本女优在线视频一区二区| 91精彩视频在线| 亚洲欧洲日韩在线| 成人在线综合网| 国产色一区二区| 国产盗摄女厕一区二区三区| 精品国产乱码久久久久久牛牛| 日本中文一区二区三区| 欧美美女激情18p| 五月激情综合网| 91精品国产综合久久久久久久 | 久久久精品tv|