📄 gb2any.h
字号:
#ifndef _GB2ANY_H
#define _GB2ANY_H
struct _node // 拼音编码索引
{
struct _node *next; // 下一个索引
struct _node *prev; // 上一个索引
WORD gbCode; // 汉字的GB编码(GB2312,GBK)
WORD index; // 汉字的新编码索引或辅助索引
// WORD spNum; // 汉字的新编码数目
};
typedef struct _node GB2INDEX;
struct _assit_node // 辅助索引
{
struct _assit_node *next; // 下一个索引
WORD index; // 汉字的新编码索引
};
typedef struct _assit_node ASSISTINDEX;
#define SECTION_NUM 126 // 分区数目(0xFF - 0x81)
#define NUM_PRE_SECTION 94 // 每区中汉字的数目
/*
DWORD Tbl_I[SECTION_NUM]; // 汉字编码一级索引表(分区表)
DWORD Tblcnt[SECTION_NUM]; // 分区表索引统计
*/
GB2INDEX *Tbl_II = NULL; // 汉字编码二级索引表(拼音编码索引)
ASSISTINDEX *Tbl_Assist = NULL; // 汉字编码辅助索引表
WORD Tbl_II_Len = 0; // 汉字编码二级索引表长度
WORD Tbl_Assist_Len = 0; // 汉字编码辅助索引表长度
DWORD ToneNum[4] = { 0, 0, 0, 0 }; // 多编码字个数统计
// 根据汉字的GB编码获取分区号
#define GetSectionID( code ) ( ( (code) >> 8 )- 0x81 )
#define GBK 0 // GBK全字符集
#define GB2312 1 // GB2312全字符集
#define GB2312_I 2 // 一级字符集
#define GB2312_II 3 // 二级字符集
#define GB2312_STD 4 // 一、二级字符集
#define GB_TYPE GB2312_I//GBK
#define SHUANG_PIN 0
#define QUAN_PIN 1
#define WU_BI86 2
#define INDEX_TYPE QUAN_PIN//SHUANG_PIN
#if GB_TYPE == GBK
#define CheckCH( high, low )
#elif GB_TYPE == GB2312
#define CheckCH( high, low ) if( (high) < 0xB0 || (low) > 0xD7 ) continue;
#elif GB_TYPE == GB2312_I
#define CheckCH( high, low ) if( (high) < 0xB0 || (high) > 0xD7 || ( (low) < 0xA1 && (low) > 0x04 ) ) continue;
#elif GB_TYPE == GB2312_II
#define CheckCH( high, low ) if( (high) < 0xD8 || (high) > 0xF7 || ( (low) < 0xA1 && (low) > 0x04 ) ) continue;
#elif GB_TYPE == GB2312_STD
#define CheckCH( high, low ) if( (high) < 0xB0 || (high) > 0xF7 || ( (low) < 0xA1 && (low) > 0x04 ) ) continue;
#endif
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -