hufdec.c

来自「适合大型数值计算代码 现在网络上已经找不到了 购买需要20$」· C语言 代码 · 共 27 行

C
27
字号
typedef struct {	unsigned long *icod,*ncod,*left,*right,nch,nodemax;} huffcode;void hufdec(unsigned long *ich, unsigned char *code, unsigned long lcode,	unsigned long *nb, huffcode *hcode){	long nc,node;	static unsigned char setbit[8]={0x1,0x2,0x4,0x8,0x10,0x20,0x40,0x80};	node=hcode->nodemax;	for (;;) {		nc=(*nb >> 3);		if (++nc > lcode) {			*ich=hcode->nch;			return;		}		node=(code[nc] & setbit[7 & (*nb)++] ?			hcode->right[node] : hcode->left[node]);		if (node <= hcode->nch) {			*ich=node-1;			return;		}	}}

⌨️ 快捷键说明

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