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

📄 qp.cpp

📁 这个基于嵌入式平台SMART PHONE电子邮件收发管理系统(MAIL MAN是一个电子邮件客户端软件。它以很小的体积
💻 CPP
字号:
// QP.cpp: implementation of the QP class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "QP.h"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

QP::QP()
{

}

QP::~QP()
{
	
}

BOOL QP::QPDeCode(const char *aSrc)
{
	unsigned char * p = m_resultbuffer;
    int             n = strlen( aSrc );
    unsigned char   ch, cl;

    while ( *aSrc )  //  aSrc is an ASCIIZ string
    {
        if ( ( *aSrc == '=' ) && ( n - 2 > 0 ) )
        {
            ch = Chr2Hex( aSrc[1] );
            cl = Chr2Hex( aSrc[2] );
            if ( ( ch == ( unsigned char )-1 ) || ( cl == ( unsigned char )-1 ) )
                *p++ = *aSrc++;
            else
            {
                *p++ = ( ch << 4 ) | cl;
                aSrc += 3;
            }
        }
        else
            *p++ = *aSrc++;
    }  
	reslenth = p - m_resultbuffer;

    return TRUE;
}

unsigned char QP::Chr2Hex( char c )
{
    if ( c >= 'a' && c <= 'z' )  //  it's toupper
        c = c - 'a' + 'A';
    if ( c >= '0' && c <= '9' )
        return ( int )( c - '0' );
    else if ( c >= 'A' && c <= 'F' )
        return ( int )( c - 'A' + 10 );
    else
        return -1;
}

BOOL QP::GetRes(char *result, int lenth)
{
	int actlen = reslenth < lenth?reslenth:lenth;
	memcpy(result,m_resultbuffer,sizeof(char)*actlen);
	result[actlen] = 0;
	return true;
}

⌨️ 快捷键说明

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