?? uudecode.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;}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -