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

📄 uudecode.c

📁 一个C语言写的快速贝叶斯垃圾邮件过滤工具
💻 C
字号:
/* $Id: uudecode.c,v 1.5 2003/10/31 15:34:53 relson Exp $ *//*****************************************************************************NAME:   uudecode.c -- decode uuencoded textAUTHOR:   David Relson <relson@osagesoftware.com>******************************************************************************/#include "common.h"#include "uudecode.h"uint uudecode(word_t *word){    uint size = word->leng;    uint count = 0;    byte *b = word->text;		/* beg */    byte *s = b;			/* src */    byte *d = b;			/* dst */    byte *e = b+size;			/* end */    int out = (*s++ & 0x7f) - 0x20;    /* don't process lines without leading count character */    if (out < 0)	return size;    /* don't process begin and end lines */    if ((strncasecmp((const char *)b, "begin ", 6) == 0) ||	(strncasecmp((const char *)b, "end",    3) == 0))	return size;    while (s < e - 4)    {	int v = 0;	int i;	for (i = 0; i < 4; i += 1) {	    byte c = *s++;	    v = v << 6 | ((c - 0x20) & 0x3F);	}	for (i = 2; i >= 0; i -= 1) {	    byte c = (byte) (v & 0xFF);	    d[i] = c;	    v = v >> 8;	}	d += 3;	count += 3;    }    while (s < e)     {	*d++ = *s++;	count += 1;    }    *d = (byte) '\0';    return count;}

⌨️ 快捷键说明

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