⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lz77.h

📁 使用LZ77算法实现文件压缩 点击文件-压缩
💻 H
字号:
#include <windows.h>
#ifndef __LZ77_H__
#define __LZ77_H__

#define OFFSET_CODING_LENGTH    (10)
#define MAX_WND_SIZE            1024
//#define MAX_WND_SIZE          (1<<OFFSET_CODING_LENGTH)
#define OFFSET_MASK_CODE        (MAX_WND_SIZE-1)



void		Write1ToBitStream(PUCHAR  pBuffer,ULONG   ulBitOffset);
void		Write0ToBitStream(PUCHAR  pBuffer,ULONG   ulBitOffset);
ULONG		ReadBitFromBitStream(PUCHAR  pBuffer,ULONG   ulBitOffset);
ULONG		WINAPI WriteGolombCode(ULONG   x,PUCHAR  pBuffer,ULONG   ulBitOffset);
ULONG		ReadGolombCode(PULONG  pulCodingLength,PUCHAR  pBuffer,ULONG   ulBitOffset);
ULONG		CompareStrings(PUCHAR  string1,PUCHAR  string2,ULONG   length);
void		ReadBits(PUCHAR  pDataBuffer,ULONG   ulOffsetToRead,PULONG  pulBits);
void WINAPI	FindLongestSubstring(PUCHAR  pSourceString,
							    PUCHAR  pString,
								ULONG   ulSourceStringLength,
								PULONG  pulSubstringOffset,
								PULONG  pulSubstringLength
								);
void		WriteBits(PUCHAR  pDataBuffer,
					ULONG   ulOffsetToWrite,
					ULONG   ulBits,
					ULONG   ulBitLength
					);

void		lz77compress(
						 PUCHAR  pDataBuffer,
						 ULONG   ulDataLength,
						PUCHAR  pOutputBuffer,
						PULONG  pulNumberOfBits
						);
void		lz77decompress(PUCHAR  pDataBuffer,
						ULONG   ulNumberOfBits,
						PUCHAR  pOutputBuffer,
						PULONG  pulNumberOfBytes
						);
BOOL		lz77(LPTSTR filename,LPTSTR savepath,bool bcompress);
void		GetFileExt(LPTSTR lpszFileName,int &cExtLen,char *szFileExt);
#endif

⌨️ 快捷键说明

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