?? lzss.h.txt
字號:
////////////////////////////////////////////////////////////////////////////////////////////////
// LZSS 壓縮程序
// 程序編寫:胡穎卓
// 編寫時間:1999年12月
////////////////////////////////////////////////////////////////////////////////////////////////
class LZSS
{
enum LZSSDATA
{
inMEM=1,inFILE
};
unsigned char *buffer;
int mpos,mlen;
int *lson,*rson,*dad;
unsigned char InType,OutType; //輸入輸出數據類型,指明是文件還是內存中的數據
unsigned char *InData,*OutData; //輸入輸出數據指針
FILE *fpIn,*fpOut; //輸入輸出文件指針
unsigned long InDataSize; //輸入數據長度
unsigned long InSize,OutSize; //已輸入輸出數據長度
int GetByte(); //獲取一個字節的數據
void PutByte(unsigned char); //寫入一個字節的數據
void InitTree(); //初始化串表
void InsertNode(int); //插入一個表項
void DeleteNode(int); //刪除一個表項
void Encode(); //壓縮數據
void Decode(); //解壓數據
public:
LZSS(); //本類構造函數
~LZSS(); //本類析構函數
unsigned long Compress(unsigned char *,unsigned long,
unsigned char *); //內存中的數據壓縮
unsigned long Compress(unsigned char *,unsigned long,
FILE *); //將內存中的數據壓縮后寫入文件
unsigned long Compress(FILE *,unsigned long,FILE *); //壓縮文件
unsigned long UnCompress(unsigned char *,unsigned long,
unsigned char *); //內存中的數據解壓
unsigned long UnCompress(FILE *,unsigned long,
unsigned char *); //將文件中的數據解壓后寫入內存
unsigned long UnCompress(FILE *,unsigned long,FILE *); //解壓文件
};
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -