lz77.h

来自「lz77算法("A Universal Algorithm for Sequen」· C头文件 代码 · 共 26 行

H
26
字号
#ifndef _LZ77_H
#define _LZ77_H

#include "BITIO.h"

#define INDEX_BIT_COUNT       12
#define LENGTH_BIT_COUNT      4
#define WINDOW_SIZE           (1 << INDEX_BIT_COUNT)
#define RAW_LOOK_AHEAD_SIZE   (1 << LENGTH_BIT_COUNT)

#define BREAK_EVEN            ((1 + INDEX_BIT_COUNT + LENGTH_BIT_COUNT) / 9)
#define LOOK_AHEAD_SIZE       (RAW_LOOK_AHEAD_SIZE + BREAK_EVEN)

#define TREE_ROOT             WINDOW_SIZE
#define END_OF_STREAM         0
#define MOD_WINDOW(A)         ((A) & (WINDOW_SIZE - 1))

unsigned char window[WINDOW_SIZE];
unsigned char buf[LOOK_AHEAD_SIZE];

void CompressFile(FILE * inputFile, BITFILE * outputFile);
void ExpandFile(BITFILE * inputFile, FILE * outputFile);

void testLZ77();

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?